{"openapi":"3.1.0","info":{"title":"YAgent","description":"Enterprise AI Agent Platform for yagent","version":"2.1.5"},"paths":{"/api/auth/register":{"post":{"summary":"Register Endpoint","description":"公开注册（自动赋予 operator 角色）\n\n企业版默认**关闭**：账号一律由管理员在后台统一分配，避免任何人自助开通账号。\n需要开放自助注册的环境（公开试用等）通过 ``YAGENT_ALLOW_SELF_REGISTER=true`` 显式打开。","operationId":"register_endpoint_api_auth_register_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/auth/login":{"post":{"summary":"Login Endpoint","operationId":"login_endpoint_api_auth_login_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoginRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/auth/me":{"get":{"summary":"Get Current User Info","operationId":"get_current_user_info_api_auth_me_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/auth/logout":{"post":{"summary":"Logout Endpoint","operationId":"logout_endpoint_api_auth_logout_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/auth/refresh":{"post":{"summary":"Refresh Token Endpoint","operationId":"refresh_token_endpoint_api_auth_refresh_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RefreshTokenRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/users":{"get":{"summary":"Get Users","operationId":"get_users_api_admin_users_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]},"post":{"summary":"Create User Endpoint","operationId":"create_user_endpoint_api_admin_users_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateUserRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/admin/users/{user_id}/detail":{"get":{"summary":"Get User Detail","description":"用户完整档案 —— 供「用户编辑器」查看：组织信息、数据范围、登录/授权概览。\n\n与列表接口的区别：这里返回**未脱敏的原始字段 + 关联统计**（会话数、任务数、\n单独配置的功能权限数、已授权的第三方系统数），一次请求满足编辑页所有页签。","operationId":"get_user_detail_api_admin_users__user_id__detail_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/users/{user_id}/reset-password":{"post":{"summary":"Reset User Password","description":"管理员为用户重置密码（无需原密码）。","operationId":"reset_user_password_api_admin_users__user_id__reset_password_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResetPasswordRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/audit/logs":{"get":{"summary":"Get Audit Logs","operationId":"get_audit_logs_api_admin_audit_logs_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","default":1,"title":"Page"}},{"name":"page_size","in":"query","required":false,"schema":{"type":"integer","default":20,"title":"Page Size"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/audit/users/{user_id}/logs":{"get":{"summary":"Get User Audit Logs","operationId":"get_user_audit_logs_api_admin_audit_users__user_id__logs_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","default":1,"title":"Page"}},{"name":"page_size","in":"query","required":false,"schema":{"type":"integer","default":20,"title":"Page Size"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/users/{user_id}":{"put":{"summary":"Update User Endpoint","operationId":"update_user_endpoint_api_admin_users__user_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete User Endpoint","operationId":"delete_user_endpoint_api_admin_users__user_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/users/{user_id}/permissions":{"get":{"summary":"Get User Permissions","operationId":"get_user_permissions_api_admin_users__user_id__permissions_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Set User Permissions","operationId":"set_user_permissions_api_admin_users__user_id__permissions_put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserPermissionsRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/users/{user_id}/model-access":{"put":{"summary":"Set User Model Access","operationId":"set_user_model_access_api_admin_users__user_id__model_access_put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserModelAccessRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/users/{user_id}/stats":{"get":{"summary":"Get User Stats","operationId":"get_user_stats_api_admin_users__user_id__stats_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/permissions":{"get":{"summary":"Get Permissions List","operationId":"get_permissions_list_api_admin_permissions_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/admin/permissions/modules":{"get":{"summary":"Get Permission Modules","operationId":"get_permission_modules_api_admin_permissions_modules_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/admin/permissions/sync":{"post":{"summary":"Sync Permissions To External","operationId":"sync_permissions_to_external_api_admin_permissions_sync_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyncPermissionsRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/admin/permissions/sync/{system}":{"post":{"summary":"Sync Permissions To System","operationId":"sync_permissions_to_system_api_admin_permissions_sync__system__post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"system","in":"path","required":true,"schema":{"type":"string","title":"System"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyncPermissionsRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/users/{user_id}/role":{"put":{"summary":"Update User Role Endpoint","operationId":"update_user_role_endpoint_api_admin_users__user_id__role_put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}},{"name":"role","in":"query","required":true,"schema":{"type":"string","title":"Role"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin":{"get":{"summary":"Admin Dashboard","description":"管理后台仪表盘聚合统计","operationId":"admin_dashboard_api_admin_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/user/profile":{"get":{"summary":"Get User Profile","description":"获取当前用户完整信息（本人视角）。\n\n字段口径与「管理后台 › 用户管理」对齐：账号、姓名、头像、角色、部门、\n组织、状态、联系方式绑定情况、注册与最近登录时间。\n手机号/邮箱仍按全局脱敏策略输出，是否绑定另用 ``*_bound`` 布尔表达——\n前端据此决定显示「已绑定 xxx」还是「未绑定」。","operationId":"get_user_profile_api_user_profile_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]},"put":{"summary":"Update User Profile","description":"更新当前用户资料（仅「姓名」与「头像」）。\n\n手机号不在自助通道内：`POST /user/phone` 才是唯一入口，那里有短信验证码\n做第二重身份校验；如果这里也允许改，等于给改密流程开了个后门——拿到 token\n就能把手机号换掉，再走改密就绕过了原手机号的验证。","operationId":"update_user_profile_api_user_profile_put","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateProfileRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/user/security":{"get":{"summary":"Get User Security","description":"当前账号的安全状态：绑定情况 + 自助改密的验证口径。\n\n前端「账号安全」弹窗据此决定：改密要不要验证码输入框、要不要引导去绑定手机号。","operationId":"get_user_security_api_user_security_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/user/security/logs":{"get":{"summary":"Get My Security Logs","description":"当前用户自己的安全操作日志（登录/改密/绑定手机/重置密码…）。\n\n与 ``/admin/audit/users/{user_id}/logs`` 的区别：这是**本人**视角，普通用户\n也能调，因此只暴露白名单内的安全类操作，不泄露业务操作明细。","operationId":"get_my_security_logs_api_user_security_logs_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":30,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/user/security/keyword-summary":{"get":{"summary":"Get My Keyword Summary","description":"我的风控命中汇总 + **生效中的风控词清单**。\n\n黑白名单由管理员在「管理后台 › 安全管理 › 黑白名单」维护，这里是**只读统计**：\n告诉用户「哪些词会触发风控」「我自己踩过几次」，不提供任何修改入口。\n数据源是命中流水（security_events, event_type=keyword_hit），按人隔离。","operationId":"get_my_keyword_summary_api_user_security_keyword_summary_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"window_days","in":"query","required":false,"schema":{"type":"integer","default":30,"title":"Window Days"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/user/security/keyword-hits":{"get":{"summary":"Get My Keyword Hits","description":"我的风控命中流水（分页，倒序）。","operationId":"get_my_keyword_hits_api_user_security_keyword_hits_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","default":1,"title":"Page"}},{"name":"page_size","in":"query","required":false,"schema":{"type":"integer","default":20,"title":"Page Size"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/user/verify-code":{"post":{"summary":"Send User Verify Code","description":"下发验证码。\n\n* ``scene=change_password`` → 发到当前用户**已绑定**的手机号\n* ``scene=bind_phone``      → 发到 ``phone`` 指定的号码（首次绑定 / 换绑）","operationId":"send_user_verify_code_api_user_verify_code_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendVerifyCodeRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/user/phone":{"post":{"summary":"Bind User Phone","description":"绑定 / 换绑当前账号的手机号（需新号码收到的验证码）。","operationId":"bind_user_phone_api_user_phone_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BindPhoneRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/user/password":{"post":{"summary":"Change Password","description":"修改密码。\n\n验证口径（可用 ``settings.password_change_require_phone`` 开关）：\n* 已绑定手机号且策略开启 → **必须**提供手机验证码\n* 未绑定手机号且策略开启 → 拒绝并引导先绑定，不静默降级为「仅旧密码」\n* 策略关闭 → 仅校验旧密码（宽松模式）","operationId":"change_password_api_user_password_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChangePasswordRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/admin/verify-code/channel":{"get":{"summary":"Get Verify Code Channel","description":"查看验证码发送通道状态。\n\n没有激活的 ``system_code=\"sms\"`` 系统连接时走内置 Mock 通道；激活后自动切到\n通用 HTTP 适配器（第三方短信服务商），切换无需改代码。","operationId":"get_verify_code_channel_api_admin_verify_code_channel_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/admin/verify-code/channel/test":{"post":{"summary":"Test Verify Code Channel","description":"给指定手机号发一条测试验证码，用来确认通道真的打通了。","operationId":"test_verify_code_channel_api_admin_verify_code_channel_test_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifyCodeTestRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/user/logout":{"post":{"summary":"User Logout","description":"用户登出（与 /auth/logout 等价）","operationId":"user_logout_api_user_logout_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/agreement":{"get":{"summary":"Get Agreement Endpoint","operationId":"get_agreement_endpoint_api_agreement_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/agreement/accept":{"post":{"summary":"Accept Agreement Endpoint","operationId":"accept_agreement_endpoint_api_agreement_accept_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AcceptAgreementRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/auth/validate":{"get":{"summary":"Validate Token","operationId":"validate_token_api_auth_validate_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/admin/feature-permissions":{"get":{"summary":"Get Feature Permissions","description":"权限点目录 + 模块分组 + 角色基线矩阵（管理端「功能权限」配置页的元数据）。\n\n角色列表来自 ``roles`` 表（含自定义角色），基线来自\n``resolve_role_baseline``（代码底稿 + 管理员改过的覆盖）。","operationId":"get_feature_permissions_api_admin_feature_permissions_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/admin/roles":{"get":{"summary":"List Roles","description":"角色列表：内置 + 自定义，含每个角色的用户数与功能基线。","operationId":"list_roles_api_admin_roles_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]},"post":{"summary":"Create Role","description":"新建自定义角色（可选从既有角色复制权限基线）。","operationId":"create_role_api_admin_roles_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoleCreateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/admin/roles/{role}":{"put":{"summary":"Update Role","description":"更新角色元信息（名称/描述/是否管理员/排序/状态）。code 不可改。","operationId":"update_role_api_admin_roles__role__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"role","in":"path","required":true,"schema":{"type":"string","title":"Role"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoleUpdateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Role","description":"删除自定义角色（内置角色不可删；有用户在用不可删）。","operationId":"delete_role_api_admin_roles__role__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"role","in":"path","required":true,"schema":{"type":"string","title":"Role"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/roles/{role}/feature-permissions":{"get":{"summary":"Get Role Feature Permissions","description":"某角色的功能权限基线（按模块分组，含与代码底稿的差异标记）。","operationId":"get_role_feature_permissions_api_admin_roles__role__feature_permissions_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"role","in":"path","required":true,"schema":{"type":"string","title":"Role"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Update Role Feature Permissions","description":"保存角色权限基线 —— 只落「与代码底稿不同」的项（一致则删除覆盖行）。","operationId":"update_role_feature_permissions_api_admin_roles__role__feature_permissions_put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"role","in":"path","required":true,"schema":{"type":"string","title":"Role"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeaturePermissionBatchUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/users/{user_id}/feature-permissions":{"get":{"summary":"Get User Feature Permissions","description":"某用户的**最终**功能开关，并标注每一项的来源（role / user / admin 豁免）。\n\n注意：这里返回的是「用户级解析结果」，不再是角色基线复制品 ——\n管理员看到什么，就是该用户在前台真正能看到什么。","operationId":"get_user_feature_permissions_api_admin_users__user_id__feature_permissions_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Update User Feature Permissions","description":"写入**用户级**功能权限覆盖 —— 只影响该用户，不再波及同角色的其他人。\n\n只落库「与角色基线不同」的项：与基线一致的会被删除（即回到「跟随角色」），\n这样以后调整角色基线能自动惠及该用户，管理成本不随用户数增长。","operationId":"update_user_feature_permissions_api_admin_users__user_id__feature_permissions_put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeaturePermissionBatchUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/user/features":{"get":{"summary":"Get My Features","description":"返回当前登录用户的最终功能开关。\n\n前台 App 启动后拉一次并缓存；管理员在后台改了权限，用户重新登录/刷新即可生效。","operationId":"get_my_features_api_user_features_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/admin/users/{user_id}/system-permissions":{"get":{"summary":"Get User System Permissions","description":"某用户的跨系统权限（按系统分组，读取**权限目录**而非硬编码模板）。\n\n返回每个系统：名称、是否已接入连接器（可同步）、目录规模、每项授权状态、\n最近同步时间与同步来源，供前端「查看/编辑」面板直接渲染。","operationId":"get_user_system_permissions_api_admin_users__user_id__system_permissions_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/users/{user_id}/system-permissions/{system_code}":{"put":{"summary":"Update User System Permissions","operationId":"update_user_system_permissions_api_admin_users__user_id__system_permissions__system_code__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}},{"name":"system_code","in":"path","required":true,"schema":{"type":"string","title":"System Code"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SystemPermissionBatchUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/system-permissions/sync":{"post":{"summary":"Sync System Permissions","description":"一键同步：把平台侧的跨系统授权**真正推送**给已接入的第三方系统。\n\n与旧实现的区别：旧代码里对接第三方是 ``pass``（只更新时间戳，误导以为同步成功）。\n现在对每个「用户 × 已接入系统」调用真实 HTTP 推送；未接入连接器的系统会如实\n标记为 ``skipped`` 并给出原因，绝不假装成功。","operationId":"sync_system_permissions_api_admin_system_permissions_sync_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SystemPermissionSyncRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/admin/chats":{"get":{"summary":"Get Admin Chats","description":"管理后台：查询对话记录列表，支持用户/智能体/状态/关键词过滤和分页。\n\n可追溯性：每条记录同时给出「归属用户」（user_id / username / 昵称）与\n「产生的智能体」（agent_id / agent_name），数据来自 users / agents 真实表。\n\n注意：chats 表当前无 status 字段，status 参数暂不生效（返回默认 active）。","operationId":"get_admin_chats_api_admin_chats_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"user_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Id"}},{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"keyword","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Keyword"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","default":1,"title":"Page"}},{"name":"page_size","in":"query","required":false,"schema":{"type":"integer","default":10,"title":"Page Size"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/chats/{chat_id}/messages":{"get":{"summary":"Get Admin Chat Messages","description":"管理后台：获取指定 chat 的完整消息列表（按创建时间升序）。\n\n可追溯性：除消息外，额外返回 ``chat`` 元信息（归属用户 + 产生该对话的智能体），\n便于详情页展示「这条对话属于谁、由哪个 Agent 产生」。\n\n注意：messages 表当前无 tool_call_id 字段，统一返回 None。","operationId":"get_admin_chat_messages_api_admin_chats__chat_id__messages_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"chat_id","in":"path","required":true,"schema":{"type":"string","title":"Chat Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/chats/users":{"get":{"summary":"Get Admin Chat Users","description":"管理后台：对话筛选下拉用户列表。","operationId":"get_admin_chat_users_api_admin_chats_users_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/admin/chats/{chat_id}":{"delete":{"summary":"Delete Admin Chat","description":"管理后台：删除指定对话及其所有消息。","operationId":"delete_admin_chat_api_admin_chats__chat_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"chat_id","in":"path","required":true,"schema":{"type":"string","title":"Chat Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/usage-stats":{"get":{"summary":"Get Admin Usage Stats","description":"管理后台仪表盘：真实使用量统计（近30天 vs 上一周期30天）。\n\n说明：\n- monthly_token_usage：Message 表 token_count 字段求和（无则按消息数 * 500 估算）\n- monthly_api_calls：operation_logs 中 action_type 含 'api' 的记录数\n- monthly_agent_created：AgentConfig 中近 30 天创建数\n- monthly_tasks_completed：long_running_tasks 中近 30 天状态 completed/done 数","operationId":"get_admin_usage_stats_api_admin_usage_stats_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/admin/tasks":{"get":{"summary":"List All Tasks","description":"管理后台：查询所有 agent 的任务（可按 agent_id / status 过滤）。","operationId":"list_all_tasks_api_admin_tasks_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create Admin Task","description":"管理后台：创建任务，写入 long_running_tasks 表。\n\n说明：现有任务模型为 LongRunningTask（表 long_running_tasks），字段映射：\n  - title → task_name\n  - description → task_description\n  - progress → progress_percent\n  - assigned_to → assignee_user_id（同时查 users 表填充 assignee_name）\n  - deadline → current_deadline","operationId":"create_admin_task_api_admin_tasks_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdminTaskCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/tasks/{task_id}/approvals":{"get":{"summary":"Get Admin Task Approvals","description":"管理后台：查询任务的审批/操作记录。\n\n说明：permission_audit_logs 表为工具调用审批日志（无 target_type/target_id），\n因此这里从 operation_logs 中查找 target_type='task' 且 target_id=task_id 的记录，\n同时也从 permission_audit_logs 中通过 tool_args JSON 包含 task_id 的记录补充。","operationId":"get_admin_task_approvals_api_admin_tasks__task_id__approvals_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"string","title":"Task Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/tasks/users":{"get":{"summary":"Get Admin Task Users And Agents","description":"管理后台：任务创建/筛选下拉列表（所有用户 + 所有 Agent）。","operationId":"get_admin_task_users_and_agents_api_admin_tasks_users_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/public/brand":{"get":{"tags":["public"],"summary":"Public Brand","description":"品牌与联系方式（登录页左栏）。","operationId":"public_brand_api_public_brand_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Public Brand Api Public Brand Get"}}}}}}},"/api/public/product-intro":{"get":{"tags":["public"],"summary":"Public Product Intro","description":"产品说明页内容（含功能演示脚本）。","operationId":"public_product_intro_api_public_product_intro_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Public Product Intro Api Public Product Intro Get"}}}}}}},"/api/public/demo-accounts":{"get":{"tags":["public"],"summary":"Public Demo Accounts","description":"演示账号列表（与数据库交叉核对）。","operationId":"public_demo_accounts_api_public_demo_accounts_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Public Demo Accounts Api Public Demo Accounts Get"}}}}}}},"/api/public/api-catalog":{"get":{"tags":["public"],"summary":"Public Api Catalog","description":"API 目录：按模块聚合 openapi 端点，供「API 文档」页展示。","operationId":"public_api_catalog_api_public_api_catalog_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Public Api Catalog Api Public Api Catalog Get"}}}}}}},"/api/admin/systems":{"get":{"tags":["system-permissions"],"summary":"List Systems","description":"接入系统列表 —— 连接器表里的系统 ∪ 内置模板系统。","operationId":"list_systems_api_admin_systems_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/admin/systems/{system_code}/permissions":{"get":{"tags":["system-permissions"],"summary":"Get System Permissions","description":"某系统的权限目录（首次访问自动用内置模板播种）。","operationId":"get_system_permissions_api_admin_systems__system_code__permissions_get","parameters":[{"name":"system_code","in":"path","required":true,"schema":{"type":"string","title":"System Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["system-permissions"],"summary":"Add System Permission","description":"手工补充一个权限点（第三方没提供但业务需要的场景）。","operationId":"add_system_permission_api_admin_systems__system_code__permissions_post","parameters":[{"name":"system_code","in":"path","required":true,"schema":{"type":"string","title":"System Code"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SystemPermissionCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/systems/{system_code}/discover":{"post":{"tags":["system-permissions"],"summary":"Discover System Permissions","description":"从第三方系统发现/刷新权限目录。\n\n- 已接入连接器 → 调第三方 API 拉取（来源标记 remote）\n- 未接入或调用失败 → 回落到内置模板（来源标记 template），并如实说明原因","operationId":"discover_system_permissions_api_admin_systems__system_code__discover_post","parameters":[{"name":"system_code","in":"path","required":true,"schema":{"type":"string","title":"System Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/systems/{system_code}/permissions/{permission_code}":{"delete":{"tags":["system-permissions"],"summary":"Delete System Permission","description":"删除权限点，并清理所有用户在该系统下的授权行。","operationId":"delete_system_permission_api_admin_systems__system_code__permissions__permission_code__delete","parameters":[{"name":"system_code","in":"path","required":true,"schema":{"type":"string","title":"System Code"}},{"name":"permission_code","in":"path","required":true,"schema":{"type":"string","title":"Permission Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/users/{user_id}/system-permissions/{system_code}/push":{"post":{"tags":["system-permissions"],"summary":"Push User System Permissions","description":"把该用户在该第三方系统的授权**反向推送**过去（改这里 = 改第三方）。","operationId":"push_user_system_permissions_api_admin_users__user_id__system_permissions__system_code__push_post","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}},{"name":"system_code","in":"path","required":true,"schema":{"type":"string","title":"System Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/users/{user_id}/system-permissions/{system_code}/pull":{"post":{"tags":["system-permissions"],"summary":"Pull User System Permissions","description":"从第三方**回拉**该用户的授权，覆盖本地记录（以第三方为准）。","operationId":"pull_user_system_permissions_api_admin_users__user_id__system_permissions__system_code__pull_post","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}},{"name":"system_code","in":"path","required":true,"schema":{"type":"string","title":"System Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/systems/{system_code}/push-all":{"post":{"tags":["system-permissions"],"summary":"Push All System Permissions","description":"把全部用户在该系统的授权批量推送到第三方。","operationId":"push_all_system_permissions_api_admin_systems__system_code__push_all_post","parameters":[{"name":"system_code","in":"path","required":true,"schema":{"type":"string","title":"System Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/systems/{system_code}/users":{"get":{"tags":["system-permissions"],"summary":"List System Users","description":"某系统下的「用户 × 授权」概览 —— 供「第三方系统用户」页左栏使用。\n\n未初始化过授权的用户同样列出（granted=0），点击后由\n``GET /admin/users/{uid}/system-permissions`` 按目录补齐。","operationId":"list_system_users_api_admin_systems__system_code__users_get","parameters":[{"name":"system_code","in":"path","required":true,"schema":{"type":"string","title":"System Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/systems/{system_code}/connection":{"get":{"tags":["system-permissions"],"summary":"Get System Connection","description":"查看某系统的同步连接配置摘要（不返回密钥明文）。","operationId":"get_system_connection_api_admin_systems__system_code__connection_get","parameters":[{"name":"system_code","in":"path","required":true,"schema":{"type":"string","title":"System Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/bpmn/definitions":{"get":{"tags":["bpmn"],"summary":"List Definitions","operationId":"list_definitions_api_bpmn_definitions_get","parameters":[{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["bpmn"],"summary":"Create Definition","operationId":"create_definition_api_bpmn_definitions_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DefinitionCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/bpmn/definitions/{definition_id}":{"get":{"tags":["bpmn"],"summary":"Get Definition","operationId":"get_definition_api_bpmn_definitions__definition_id__get","parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","title":"Definition Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["bpmn"],"summary":"Update Definition","operationId":"update_definition_api_bpmn_definitions__definition_id__put","parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","title":"Definition Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DefinitionUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["bpmn"],"summary":"Delete Definition","operationId":"delete_definition_api_bpmn_definitions__definition_id__delete","parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","title":"Definition Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/bpmn/definitions/{definition_id}/validate":{"post":{"tags":["bpmn"],"summary":"Validate Definition","description":"校验 XML（可传 body 校验未保存的内容，否则校验已保存的定义）。","operationId":"validate_definition_api_bpmn_definitions__definition_id__validate_post","parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","title":"Definition Id"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ValidateRequest"},{"type":"null"}],"title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/bpmn/definitions/{definition_id}/publish":{"post":{"tags":["bpmn"],"summary":"Publish Definition","operationId":"publish_definition_api_bpmn_definitions__definition_id__publish_post","parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","title":"Definition Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/bpmn/generate":{"post":{"tags":["bpmn"],"summary":"Generate Bpmn","description":"自然语言 → BPMN XML（含校验与一次自动修复重试）。","operationId":"generate_bpmn_api_bpmn_generate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GenerateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/bpmn/instances":{"post":{"tags":["bpmn"],"summary":"Start Instance","operationId":"start_instance_api_bpmn_instances_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InstanceCreate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["bpmn"],"summary":"List Instances","operationId":"list_instances_api_bpmn_instances_get","parameters":[{"name":"state","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"State"}},{"name":"definition_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Definition Id"}},{"name":"business_key","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Business Key"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/bpmn/instances/{instance_id}":{"get":{"tags":["bpmn"],"summary":"Get Instance","operationId":"get_instance_api_bpmn_instances__instance_id__get","parameters":[{"name":"instance_id","in":"path","required":true,"schema":{"type":"string","title":"Instance Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/bpmn/instances/{instance_id}/tasks/{task_id}/complete":{"post":{"tags":["bpmn"],"summary":"Complete Task","description":"完成一个人工任务并推进流程（服务任务同样由此接口「外部回调」完成）。","operationId":"complete_task_api_bpmn_instances__instance_id__tasks__task_id__complete_post","parameters":[{"name":"instance_id","in":"path","required":true,"schema":{"type":"string","title":"Instance Id"}},{"name":"task_id","in":"path","required":true,"schema":{"type":"string","title":"Task Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskCompleteRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/bpmn/instances/{instance_id}/terminate":{"post":{"tags":["bpmn"],"summary":"Terminate Instance","operationId":"terminate_instance_api_bpmn_instances__instance_id__terminate_post","parameters":[{"name":"instance_id","in":"path","required":true,"schema":{"type":"string","title":"Instance Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/bpmn/my-tasks":{"get":{"tags":["bpmn"],"summary":"My Tasks","description":"我的待办（跨实例聚合）。\n\n指派规则：显式 assignee 命中当前用户，或未指派（人人可办）。","operationId":"my_tasks_api_bpmn_my_tasks_get","parameters":[{"name":"state","in":"query","required":false,"schema":{"type":"string","default":"pending","title":"State"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents":{"get":{"summary":"List Agents","operationId":"list_agents_api_agents_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","default":1,"title":"Page"}},{"name":"page_size","in":"query","required":false,"schema":{"type":"integer","default":20,"title":"Page Size"}},{"name":"agent_type","in":"query","required":false,"schema":{"type":"string","title":"Agent Type"}},{"name":"status","in":"query","required":false,"schema":{"type":"string","title":"Status"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create Agent Endpoint","operationId":"create_agent_endpoint_api_agents_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAgentRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}":{"get":{"summary":"Get Agent Endpoint","operationId":"get_agent_endpoint_api_agents__agent_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Update Agent Endpoint","operationId":"update_agent_endpoint_api_agents__agent_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateAgentRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Agent Endpoint","operationId":"delete_agent_endpoint_api_agents__agent_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/chats":{"get":{"summary":"List Agent Chats","operationId":"list_agent_chats_api_agents__agent_id__chats_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","default":1,"title":"Page"}},{"name":"page_size","in":"query","required":false,"schema":{"type":"integer","default":20,"title":"Page Size"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create Agent Chat","operationId":"create_agent_chat_api_agents__agent_id__chats_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/yagent__app__agent_mgmt__router__CreateChatRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/chats/{chat_id}":{"get":{"summary":"Get Agent Chat","operationId":"get_agent_chat_api_agents__agent_id__chats__chat_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"chat_id","in":"path","required":true,"schema":{"type":"string","title":"Chat Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/chats/{chat_id}/message":{"post":{"summary":"Send Agent Chat Message","description":"Agent 域发消息（前端主链路）。\n\n必须与通用 /chats/message 端点行为一致，否则会出现：\n  - 工具审计/审批请求记到 \"agent\" 名下 → 待审批列表、对话内确认全部失效；\n  - 后端已代执行的写操作无法回写到该 Agent 的任务跟踪。\n因此这里统一注入请求级上下文（user/agent/chat），并处理对话内确认。\n\n**前置校验的唯一定义处是 identity_risk/gate.py。**\n本端点与通用端点都必须调用它，不得各自复制一份 —— 曾因只在一端补逻辑，\n导致前端主链路绕过身份核验，危险指令被直接执行。","operationId":"send_agent_chat_message_api_agents__agent_id__chats__chat_id__message_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"chat_id","in":"path","required":true,"schema":{"type":"string","title":"Chat Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/yagent__app__agent_mgmt__router__SendMessageRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/chats/{chat_id}/messages":{"get":{"summary":"Get Agent Chat Messages","operationId":"get_agent_chat_messages_api_agents__agent_id__chats__chat_id__messages_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"chat_id","in":"path","required":true,"schema":{"type":"string","title":"Chat Id"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","default":1,"title":"Page"}},{"name":"page_size","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Page Size"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Clear Agent Chat Messages","operationId":"clear_agent_chat_messages_api_agents__agent_id__chats__chat_id__messages_delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"chat_id","in":"path","required":true,"schema":{"type":"string","title":"Chat Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/tasks":{"get":{"summary":"List Agent Tasks","operationId":"list_agent_tasks_api_agents__agent_id__tasks_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"refresh","in":"query","required":false,"schema":{"type":"boolean","default":true,"title":"Refresh"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create Agent Task","operationId":"create_agent_task_api_agents__agent_id__tasks_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTaskRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/tasks/history":{"get":{"summary":"List Agent Task History","description":"查询 Agent 的历史任务（已完成/已驳回）。","operationId":"list_agent_task_history_api_agents__agent_id__tasks_history_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/tasks/{task_id}":{"get":{"summary":"Get Agent Task","operationId":"get_agent_task_api_agents__agent_id__tasks__task_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"task_id","in":"path","required":true,"schema":{"type":"string","title":"Task Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Update Agent Task","operationId":"update_agent_task_api_agents__agent_id__tasks__task_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"task_id","in":"path","required":true,"schema":{"type":"string","title":"Task Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateTaskRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Agent Task","operationId":"delete_agent_task_api_agents__agent_id__tasks__task_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"task_id","in":"path","required":true,"schema":{"type":"string","title":"Task Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/info/memory":{"get":{"summary":"Get Agent Memory","description":"返回记忆全文 + 结构化条目。\n\n``entries`` 为结构化解析结果（稳定 id + 真实 type），前端优先消费；\n``content`` 保留原始 Markdown 供编辑使用。","operationId":"get_agent_memory_api_agents__agent_id__info_memory_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Add Agent Memory","operationId":"add_agent_memory_api_agents__agent_id__info_memory_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddMemoryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Update Agent Memory","operationId":"update_agent_memory_api_agents__agent_id__info_memory_put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateContentRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Clear Agent Memory","operationId":"clear_agent_memory_api_agents__agent_id__info_memory_delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/info/memory/organize":{"post":{"summary":"Organize Agent Memory","description":"整理记忆：AI 压缩去重（LLM 优先，降级确定性去重）。\n\n真实改动记忆文件；无变化时明确返回 changed=0，不写占位内容。","operationId":"organize_agent_memory_api_agents__agent_id__info_memory_organize_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/info/diary":{"get":{"summary":"Get Agent Diary","description":"返回日志全文 + 按日期分组的结构化条目。","operationId":"get_agent_diary_api_agents__agent_id__info_diary_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Update Agent Diary","operationId":"update_agent_diary_api_agents__agent_id__info_diary_put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateContentRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Clear Agent Diary","operationId":"clear_agent_diary_api_agents__agent_id__info_diary_delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/info/diary/generate":{"post":{"summary":"Generate Agent Diary","description":"汇总当日**真实工作记录**生成日志（LLM 优先，不可用则照录真实条目）。\n\n数据源为空时明确返回「今日暂无记录」，不会写入占位文案。","operationId":"generate_agent_diary_api_agents__agent_id__info_diary_generate_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/info/files":{"get":{"summary":"List Agent File Snapshots","operationId":"list_agent_file_snapshots_api_agents__agent_id__info_files_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Add Agent File Snapshot","operationId":"add_agent_file_snapshot_api_agents__agent_id__info_files_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddFileSnapshotRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/info/files/{snapshot_id}":{"delete":{"summary":"Delete Agent File Snapshot","operationId":"delete_agent_file_snapshot_api_agents__agent_id__info_files__snapshot_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"snapshot_id","in":"path","required":true,"schema":{"type":"string","title":"Snapshot Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Update Agent File Snapshot","operationId":"update_agent_file_snapshot_api_agents__agent_id__info_files__snapshot_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"snapshot_id","in":"path","required":true,"schema":{"type":"string","title":"Snapshot Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateFileSnapshotRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/profile":{"get":{"summary":"Get Agent Expert","operationId":"get_agent_expert_api_agents__agent_id__expert_profile_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Update Agent Expert","operationId":"update_agent_expert_api_agents__agent_id__expert_profile_put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateExpertRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/taboo":{"get":{"summary":"List Agent Taboo","operationId":"list_agent_taboo_api_agents__agent_id__expert_taboo_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Add Agent Taboo","operationId":"add_agent_taboo_api_agents__agent_id__expert_taboo_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddTabooRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/taboo/{index}":{"delete":{"summary":"Remove Agent Taboo","operationId":"remove_agent_taboo_api_agents__agent_id__expert_taboo__index__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"index","in":"path","required":true,"schema":{"type":"integer","title":"Index"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Update Agent Taboo","operationId":"update_agent_taboo_api_agents__agent_id__expert_taboo__index__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"index","in":"path","required":true,"schema":{"type":"integer","title":"Index"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddTabooRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/skills":{"get":{"summary":"List Agent Skills","operationId":"list_agent_skills_api_agents__agent_id__expert_skills_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Save Agent Skill","operationId":"save_agent_skill_api_agents__agent_id__expert_skills_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SaveSkillRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/skills/{skill_id}":{"put":{"summary":"Update Agent Skill","operationId":"update_agent_skill_api_agents__agent_id__expert_skills__skill_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/yagent__app__agent_mgmt__router__UpdateSkillRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"summary":"Get Agent Skill","operationId":"get_agent_skill_api_agents__agent_id__expert_skills__skill_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Agent Skill","operationId":"delete_agent_skill_api_agents__agent_id__expert_skills__skill_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/skills/sync":{"post":{"summary":"Sync Agent Skills","operationId":"sync_agent_skills_api_agents__agent_id__expert_skills_sync_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyncSkillsRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/mcp":{"get":{"summary":"List Agent Mcp","operationId":"list_agent_mcp_api_agents__agent_id__expert_mcp_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/mcp/sync":{"post":{"summary":"Sync Agent Mcp","operationId":"sync_agent_mcp_api_agents__agent_id__expert_mcp_sync_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyncMcpRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/mcp/{mcp_id}":{"delete":{"summary":"Remove Agent Mcp","operationId":"remove_agent_mcp_api_agents__agent_id__expert_mcp__mcp_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"mcp_id","in":"path","required":true,"schema":{"type":"string","title":"Mcp Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/skills/install":{"post":{"summary":"Install Agent Skill","operationId":"install_agent_skill_api_agents__agent_id__expert_skills_install_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InstallSkillRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/mcp/install":{"post":{"summary":"Install Agent Mcp","operationId":"install_agent_mcp_api_agents__agent_id__expert_mcp_install_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InstallMcpRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/mcp-market/system":{"get":{"summary":"List System Mcps","description":"返回系统中已有的 MCP 配置（占位：从 main-agent 工作空间读取作为模板池）。","operationId":"list_system_mcps_api_mcp_market_system_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"query","required":false,"schema":{"type":"string","title":"Agent Id"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/mcp-market/search":{"get":{"summary":"Search Market Mcps","description":"MCP 市场搜索 — 与「技能市场」共用同一套真实市场源\n\n搜索流程:\n  1. 本地内置仓库（必返回，无网络也能搜）\n  2. 真实市场源（market_sources：ClawHub / npm / 阿里云 npmmirror / 腾讯云 npm / 自建源）\n  3. 合并去重后返回\n\nArgs:\n    source: \"all\"=全部, \"local\"=仅本地, 其余为具体市场源 id（clawhub / npm / aliyun / tencent / 自建源 id）\n    q: 搜索关键词","operationId":"search_market_mcps_api_mcp_market_search_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"source","in":"query","required":false,"schema":{"type":"string","default":"all","title":"Source"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/workflow-templates":{"get":{"summary":"List Workflow Templates","description":"返回可继承的工作流模板。\n\n两级来源（管理后台维护的全局模板 + main-agent 平台基线），\n带 `origin` / `origin_label` 供前台分组展示。`origin` 可选过滤。","operationId":"list_workflow_templates_api_workflow_templates_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}},{"name":"origin","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Origin"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/workflows/install":{"post":{"summary":"Install Workflow Template","description":"把模板「复制」到当前 Agent。\n\n复制而非引用：继承后该工作流归当前 Agent 所有，可自由编辑，\n母本后续变更不会回灌 —— 避免线上流程被后台改版意外改写。","operationId":"install_workflow_template_api_agents__agent_id__expert_workflows_install_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InstallWorkflowRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/workflow-templates":{"get":{"summary":"Admin List Global Templates","description":"管理后台：全局工作流模板列表（面向所有 Agent）。","operationId":"admin_list_global_templates_api_admin_workflow_templates_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]},"post":{"summary":"Admin Add Global Template","operationId":"admin_add_global_template_api_admin_workflow_templates_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GlobalTemplateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/admin/workflow-templates/{tpl_id}":{"put":{"summary":"Admin Update Global Template","operationId":"admin_update_global_template_api_admin_workflow_templates__tpl_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"tpl_id","in":"path","required":true,"schema":{"type":"string","title":"Tpl Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GlobalTemplateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Admin Delete Global Template","operationId":"admin_delete_global_template_api_admin_workflow_templates__tpl_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"tpl_id","in":"path","required":true,"schema":{"type":"string","title":"Tpl Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/workflows":{"get":{"summary":"List Agent Workflows","operationId":"list_agent_workflows_api_agents__agent_id__expert_workflows_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Add Agent Workflow","operationId":"add_agent_workflow_api_agents__agent_id__expert_workflows_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/workflows/{wf_id}":{"put":{"summary":"Update Agent Workflow","operationId":"update_agent_workflow_api_agents__agent_id__expert_workflows__wf_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"wf_id","in":"path","required":true,"schema":{"type":"string","title":"Wf Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Agent Workflow","operationId":"delete_agent_workflow_api_agents__agent_id__expert_workflows__wf_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"wf_id","in":"path","required":true,"schema":{"type":"string","title":"Wf Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/scripts":{"get":{"summary":"List Agent Scripts","operationId":"list_agent_scripts_api_agents__agent_id__expert_scripts_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Save Agent Script","operationId":"save_agent_script_api_agents__agent_id__expert_scripts_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SaveScriptRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/scripts/{script_id}":{"put":{"summary":"Update Agent Script","operationId":"update_agent_script_api_agents__agent_id__expert_scripts__script_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"script_id","in":"path","required":true,"schema":{"type":"string","title":"Script Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateScriptRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Remove Agent Script","operationId":"remove_agent_script_api_agents__agent_id__expert_scripts__script_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"script_id","in":"path","required":true,"schema":{"type":"string","title":"Script Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/scripts/{script_id}/run":{"post":{"summary":"Run Agent Script","description":"运行自定义脚本（受限沙箱执行 Python 代码）。","operationId":"run_agent_script_api_agents__agent_id__expert_scripts__script_id__run_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"script_id","in":"path","required":true,"schema":{"type":"string","title":"Script Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RunScriptRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/info/workspace":{"get":{"summary":"Get Agent Workspace","description":"返回 Agent workspace 的文件结构。\n同时支持两条路径：\n  /agents/{id}/workspace           （主路径，WO-007 实现）\n  /agents/{id}/info/workspace      （兼容旧验收调用路径，FIX-03）","operationId":"get_agent_workspace_api_agents__agent_id__info_workspace_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/workspace":{"get":{"summary":"Get Agent Workspace","description":"返回 Agent workspace 的文件结构。\n同时支持两条路径：\n  /agents/{id}/workspace           （主路径，WO-007 实现）\n  /agents/{id}/info/workspace      （兼容旧验收调用路径，FIX-03）","operationId":"get_agent_workspace_api_agents__agent_id__workspace_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/workspace/sync":{"post":{"summary":"Sync Agent Workspace","operationId":"sync_agent_workspace_api_agents__agent_id__workspace_sync_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/workspace/file":{"get":{"summary":"Get Agent Config File","description":"读取 Agent 工作空间中的配置文件内容。","operationId":"get_agent_config_file_api_agents__agent_id__workspace_file_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"name","in":"query","required":true,"schema":{"type":"string","title":"Name"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Write Agent Config File","description":"写入 Agent 工作空间中的配置文件内容。","operationId":"write_agent_config_file_api_agents__agent_id__workspace_file_put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"name","in":"query","required":true,"schema":{"type":"string","title":"Name"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/interfaces":{"get":{"summary":"List Agent Interfaces","description":"Agent 可用连接 = 从管理后台继承的全局连接（只读）。\n\n`origin=global, readonly=true` 是给前端的「不给编辑/删除入口」信号；\n`field_mapping` / `table_mapping` 仍可由前台改写（见 upsert 端点）。","operationId":"list_agent_interfaces_api_agents__agent_id__expert_interfaces_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/interfaces/{category}":{"post":{"summary":"Upsert Agent Interface","description":"更新已在用的连接（只开放与凭据无关的字段）或新增 Agent 私有条目。\n\n**新增连接不在用户端开放**：连接是凭据的载体，唯一来源是管理后台。\n需要新连接时走 `POST /api/settings/interface-requests` 提交申请。\n这里只允许「更新已存在的条目」，且只落 `_IFACE_EDITABLE_FIELDS` 里的字段，\n防止用户绕过审批改地址/账号/密钥。","operationId":"upsert_agent_interface_api_agents__agent_id__expert_interfaces__category__post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"category","in":"path","required":true,"schema":{"type":"string","title":"Category"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InterfaceItemRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/expert/interfaces/{category}/{item_id}":{"delete":{"summary":"Delete Agent Interface","operationId":"delete_agent_interface_api_agents__agent_id__expert_interfaces__category___item_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}},{"name":"category","in":"path","required":true,"schema":{"type":"string","title":"Category"}},{"name":"item_id","in":"path","required":true,"schema":{"type":"string","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/tasks/{task_id}":{"put":{"summary":"Update Admin Task","description":"管理后台：更新任务（基于 long_running_tasks 表）。","operationId":"update_admin_task_api_admin_tasks__task_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"string","title":"Task Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdminTaskUpdateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Admin Task","description":"管理后台：删除任务（long_running_tasks + 级联 timeline/reminder_logs）。","operationId":"delete_admin_task_api_admin_tasks__task_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"string","title":"Task Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/invoke":{"post":{"summary":"Invoke Agent","description":"Agent A 调用 Agent B 执行任务。\n\n- 查找 agent_id（被调用方）\n- 注入 caller_agent_id 到上下文\n- 调用 run_agent() 执行\n- 返回 output + caller_agent_id + callee_agent_id","operationId":"invoke_agent_api_agents__agent_id__invoke_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvokeRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/ai/optimize":{"post":{"summary":"Optimize Text","description":"用系统默认模型优化一段配置文本。\n\n失败时返回 502 并附带原始错误原因，绝不降级为编造内容。","operationId":"optimize_text_api_ai_optimize_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OptimizeRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OptimizeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/chats":{"get":{"summary":"List Chats","description":"获取当前用户的对话列表，可按 agent_id 过滤","operationId":"list_chats_api_chats_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","default":1,"title":"Page"}},{"name":"page_size","in":"query","required":false,"schema":{"type":"integer","default":20,"title":"Page Size"}},{"name":"agent_id","in":"query","required":false,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create Chat Endpoint","description":"创建新对话","operationId":"create_chat_endpoint_api_chats_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/yagent__app__chat__router__CreateChatRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/chats/{chat_id}":{"get":{"summary":"Get Chat Endpoint","description":"获取单个对话详情","operationId":"get_chat_endpoint_api_chats__chat_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"chat_id","in":"path","required":true,"schema":{"type":"string","title":"Chat Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/chats/message":{"post":{"summary":"Send Message Endpoint","description":"发送消息。若未指定 chat_id 则自动创建新对话","operationId":"send_message_endpoint_api_chats_message_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"chat_id","in":"query","required":false,"schema":{"type":"string","title":"Chat Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/yagent__app__chat__router__SendMessageRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/chats/{chat_id}/messages":{"get":{"summary":"Get Messages Endpoint","description":"获取对话历史消息","operationId":"get_messages_endpoint_api_chats__chat_id__messages_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"chat_id","in":"path","required":true,"schema":{"type":"string","title":"Chat Id"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","default":1,"title":"Page"}},{"name":"page_size","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Page Size"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Clear Chat Messages","description":"清空对话消息","operationId":"clear_chat_messages_api_chats__chat_id__messages_delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"chat_id","in":"path","required":true,"schema":{"type":"string","title":"Chat Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/chats/{chat_id}/export":{"get":{"summary":"Export Chat Endpoint","description":"导出对话为 Markdown 文本","operationId":"export_chat_endpoint_api_chats__chat_id__export_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"chat_id","in":"path","required":true,"schema":{"type":"string","title":"Chat Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/connector/connections":{"get":{"summary":"Get Connections","operationId":"get_connections_api_connector_connections_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]},"post":{"summary":"Create Connection","operationId":"create_connection_api_connector_connections_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionCreateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/connector/connections/{connection_id}":{"put":{"summary":"Update Connection","operationId":"update_connection_api_connector_connections__connection_id__put","parameters":[{"name":"connection_id","in":"path","required":true,"schema":{"type":"string","title":"Connection Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Connection","operationId":"delete_connection_api_connector_connections__connection_id__delete","parameters":[{"name":"connection_id","in":"path","required":true,"schema":{"type":"string","title":"Connection Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/connector/connections/{connection_id}/test":{"post":{"summary":"Test Connection","operationId":"test_connection_api_connector_connections__connection_id__test_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"connection_id","in":"path","required":true,"schema":{"type":"string","title":"Connection Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/connector/templates":{"get":{"summary":"List Templates","description":"列出所有可用的连接器预设模板（JSON 文件）","operationId":"list_templates_api_connector_templates_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/connector/connections/{connection_id}/import":{"post":{"summary":"Import Preset","description":"从 JSON 模板文件导入端点/字段映射/查询模板到指定连接","operationId":"import_preset_api_connector_connections__connection_id__import_post","parameters":[{"name":"connection_id","in":"path","required":true,"schema":{"type":"string","title":"Connection Id"}},{"name":"template_name","in":"query","required":false,"schema":{"type":"string","default":"seeyon_oa","title":"Template Name"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/data/systems":{"get":{"summary":"Get Systems","operationId":"get_systems_api_data_systems_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/data/query":{"post":{"summary":"Execute Query","operationId":"execute_query_api_data_query_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExecuteRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/connector/connections/{connection_id}/health":{"post":{"summary":"Connection Health","description":"健康检查：多候选路径探测，结果写入连接状态。","operationId":"connection_health_api_connector_connections__connection_id__health_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"connection_id","in":"path","required":true,"schema":{"type":"string","title":"Connection Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/connector/connections/{connection_id}/status":{"get":{"summary":"Connection Status","description":"连接状态汇总：在线状态 + 端点数 + 熔断器状态。","operationId":"connection_status_api_connector_connections__connection_id__status_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"connection_id","in":"path","required":true,"schema":{"type":"string","title":"Connection Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/connector/connections/{connection_id}/discover":{"post":{"summary":"Connection Discover","description":"OpenAPI/Swagger 自动发现：拉取文档解析端点并入库（管理员）。","operationId":"connection_discover_api_connector_connections__connection_id__discover_post","parameters":[{"name":"connection_id","in":"path","required":true,"schema":{"type":"string","title":"Connection Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/connector/invoke":{"post":{"summary":"Connector Invoke","description":"前端 artifact 卡片直调第三方系统端点（刷新/详情/批准/拒绝等局部交互）。\n\n与 ConnectorTool 完全相同的护栏链：\n  1. 删除禁令（delete_guard）\n  2. 风险审批（permission_guard）：CONFIRM 级拦截时返回 needs_approval + request_id，\n     前端确认后调 POST /permissions/{request_id}/respond 由后端代执行（幂等）。","operationId":"connector_invoke_api_connector_invoke_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorInvokeRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/connector/oa/callback":{"post":{"summary":"Oa Flow Callback","description":"OA 流程事件回调（流程推进 / 通过 / 驳回 → 更新平台任务跟踪与记忆日志）。\n\n内部集成通道，不使用平台登录态；若配置了 OA_CALLBACK_TOKEN 则校验共享令牌。","operationId":"oa_flow_callback_api_connector_oa_callback_post","parameters":[{"name":"x_oa_token","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X Oa Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OaFlowCallbackRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/connector/oa/sync-my-todo":{"post":{"summary":"Sync My Oa Todo","description":"把当前登录账号在 OA 里的待办审批同步为平台任务跟踪。\n\n用户切换账号（角色）后调用：账号主人是采购经理，就以采购经理身份拿\nOA 待办，并在其当前 Agent 的「任务」里生成待处理任务。","operationId":"sync_my_oa_todo_api_connector_oa_sync_my_todo_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OaTodoSyncRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tasks":{"post":{"summary":"Create Task","operationId":"create_task_api_tasks_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"summary":"Get Tasks","description":"任务列表。assignee/task_type 支持审批卡片定向查询\n（待审批卡片按 assignee_user_id 定向推送给对应角色）。","operationId":"get_tasks_api_tasks_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"assignee","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Assignee"}},{"name":"task_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Task Type"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/tasks/todo-summary":{"get":{"summary":"Todo Summary","description":"登录通知 / 待办入口徽标用聚合数据：平台待办任务 + Mock OA 待审批事项。","operationId":"todo_summary_api_tasks_todo_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tasks/{task_id}":{"get":{"summary":"Get Task","operationId":"get_task_api_tasks__task_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"string","title":"Task Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Update Task","operationId":"update_task_api_tasks__task_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"string","title":"Task Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskUpdateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/tasks/{task_id}/timeline":{"get":{"summary":"Get Task Timeline","operationId":"get_task_timeline_api_tasks__task_id__timeline_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"string","title":"Task Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/reminder/rules":{"get":{"summary":"Get Reminder Rules","operationId":"get_reminder_rules_api_reminder_rules_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/reminder/rules/{rule_id}/test":{"post":{"summary":"Test Reminder Rule","operationId":"test_reminder_rule_api_reminder_rules__rule_id__test_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"rule_id","in":"path","required":true,"schema":{"type":"string","title":"Rule Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/tasks/sync":{"post":{"summary":"Trigger Task Sync","description":"手动触发一轮外部系统任务同步（P1-01 TaskSync）。","operationId":"trigger_task_sync_api_tasks_sync_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/operations":{"post":{"summary":"Create Operation","operationId":"create_operation_api_operations_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OperationRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/operations/{operation_id}":{"get":{"summary":"Get Operation","operationId":"get_operation_api_operations__operation_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"operation_id","in":"path","required":true,"schema":{"type":"string","title":"Operation Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/transactions":{"post":{"summary":"Create Transaction","operationId":"create_transaction_api_transactions_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransactionRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/transactions/{transaction_id}":{"get":{"summary":"Get Transaction","operationId":"get_transaction_api_transactions__transaction_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"transaction_id","in":"path","required":true,"schema":{"type":"string","title":"Transaction Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/compensation/rules":{"get":{"summary":"Get Compensation Rules","operationId":"get_compensation_rules_api_compensation_rules_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]},"post":{"summary":"Create Compensation Rule","operationId":"create_compensation_rule_api_compensation_rules_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompensationRuleRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/settings/general":{"get":{"summary":"Get General Settings","description":"获取当前用户所有通用设置（主题/语言/字体/通知/存储路径/快捷键）。","operationId":"get_general_settings_api_settings_general_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]},"put":{"summary":"Update General Settings","description":"批量更新通用设置（插入或更新）。","operationId":"update_general_settings_api_settings_general_put","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Request"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/admin/settings/all":{"get":{"summary":"Get All System Settings","operationId":"get_all_system_settings_api_admin_settings_all_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/admin/settings/system":{"get":{"summary":"List System Settings Admin","operationId":"list_system_settings_admin_api_admin_settings_system_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"category","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category"}},{"name":"expert_visible_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Expert Visible Only"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Upsert System Setting Admin","operationId":"upsert_system_setting_admin_api_admin_settings_system_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/settings/external-apis":{"get":{"summary":"List External Apis","operationId":"list_external_apis_api_admin_settings_external_apis_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"enabled_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Enabled Only"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create External Api","operationId":"create_external_api_api_admin_settings_external_apis_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/settings/external-apis/{api_id}":{"get":{"summary":"Get External Api","operationId":"get_external_api_api_admin_settings_external_apis__api_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"api_id","in":"path","required":true,"schema":{"type":"string","title":"Api Id"}},{"name":"with_secret","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"With Secret"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Update External Api","operationId":"update_external_api_api_admin_settings_external_apis__api_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"api_id","in":"path","required":true,"schema":{"type":"string","title":"Api Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete External Api","operationId":"delete_external_api_api_admin_settings_external_apis__api_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"api_id","in":"path","required":true,"schema":{"type":"string","title":"Api Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/settings/sso":{"get":{"summary":"List Sso Configs","operationId":"list_sso_configs_api_admin_settings_sso_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"enabled_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Enabled Only"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create Sso Config","operationId":"create_sso_config_api_admin_settings_sso_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/settings/sso/{sso_id}":{"get":{"summary":"Get Sso Config","operationId":"get_sso_config_api_admin_settings_sso__sso_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"sso_id","in":"path","required":true,"schema":{"type":"string","title":"Sso Id"}},{"name":"with_secret","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"With Secret"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Update Sso Config","operationId":"update_sso_config_api_admin_settings_sso__sso_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"sso_id","in":"path","required":true,"schema":{"type":"string","title":"Sso Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Sso Config","operationId":"delete_sso_config_api_admin_settings_sso__sso_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"sso_id","in":"path","required":true,"schema":{"type":"string","title":"Sso Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/settings/{key}":{"put":{"summary":"Update System Setting","description":"兼容旧API：更新系统级 key-value 设置。","operationId":"update_system_setting_api_admin_settings__key__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"key","in":"path","required":true,"schema":{"type":"string","title":"Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSettingRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/models":{"get":{"summary":"List Llm Models","operationId":"list_llm_models_api_settings_models_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"enabled_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Enabled Only"}},{"name":"model_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Type"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create Llm Model","operationId":"create_llm_model_api_settings_models_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/models/{model_id}":{"get":{"summary":"Get Llm Model","operationId":"get_llm_model_api_settings_models__model_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"model_id","in":"path","required":true,"schema":{"type":"string","title":"Model Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Update Llm Model","operationId":"update_llm_model_api_settings_models__model_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"model_id","in":"path","required":true,"schema":{"type":"string","title":"Model Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Llm Model","operationId":"delete_llm_model_api_settings_models__model_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"model_id","in":"path","required":true,"schema":{"type":"string","title":"Model Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/models/{model_id}/test":{"post":{"summary":"Test Llm Model","operationId":"test_llm_model_api_settings_models__model_id__test_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"model_id","in":"path","required":true,"schema":{"type":"string","title":"Model Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/models/{model_id}/default":{"post":{"summary":"Set Default Llm Model","operationId":"set_default_llm_model_api_settings_models__model_id__default_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"model_id","in":"path","required":true,"schema":{"type":"string","title":"Model Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/skills":{"get":{"summary":"List Global Skills","operationId":"list_global_skills_api_settings_skills_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"category","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category"}},{"name":"installed_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Installed Only"}},{"name":"source","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create Global Skill","operationId":"create_global_skill_api_settings_skills_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/skills/{skill_id}":{"put":{"summary":"Update Global Skill","operationId":"update_global_skill_api_settings_skills__skill_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Global Skill","operationId":"delete_global_skill_api_settings_skills__skill_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/skills/{skill_id}/toggle":{"post":{"summary":"Toggle Global Skill","description":"安装 / 卸载技能。\n\n- `platform:<id>` → 来自管理后台维护的技能目录，需落/改本人安装记录\n- 其他 id → 已存在的 registry 记录，直接翻转 installed","operationId":"toggle_global_skill_api_settings_skills__skill_id__toggle_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/mcp":{"get":{"summary":"List Global Mcp","operationId":"list_global_mcp_api_settings_mcp_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"type_filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type Filter"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create Global Mcp","operationId":"create_global_mcp_api_settings_mcp_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/mcp/{mcp_id}":{"put":{"summary":"Update Global Mcp","operationId":"update_global_mcp_api_settings_mcp__mcp_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"mcp_id","in":"path","required":true,"schema":{"type":"string","title":"Mcp Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Global Mcp","operationId":"delete_global_mcp_api_settings_mcp__mcp_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"mcp_id","in":"path","required":true,"schema":{"type":"string","title":"Mcp Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/mcp/{mcp_id}/test":{"post":{"summary":"Test Mcp Server","operationId":"test_mcp_server_api_settings_mcp__mcp_id__test_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"mcp_id","in":"path","required":true,"schema":{"type":"string","title":"Mcp Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/market-sources":{"get":{"summary":"List Market Sources","operationId":"list_market_sources_api_settings_market_sources_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"enabled_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Enabled Only"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Upsert Market Source","operationId":"upsert_market_source_api_settings_market_sources_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/market-sources/{source_id}/test":{"post":{"summary":"Test Market Source","description":"真实探测市场源（带 url 时用表单里尚未保存的值直接测）。","operationId":"test_market_source_api_settings_market_sources__source_id__test_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/install-paths":{"get":{"summary":"Get Install Paths","operationId":"get_install_paths_api_settings_install_paths_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]},"put":{"summary":"Set Install Paths","operationId":"set_install_paths_api_settings_install_paths_put","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload","default":{}}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/settings/market-sources/{source_id}":{"delete":{"summary":"Delete Market Source","operationId":"delete_market_source_api_settings_market_sources__source_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/business-systems":{"get":{"summary":"List Business Systems","operationId":"list_business_systems_api_settings_business_systems_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"type_filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type Filter"}},{"name":"enabled_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Enabled Only"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create Business System","operationId":"create_business_system_api_settings_business_systems_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/business-systems/{sys_id}":{"put":{"summary":"Update Business System","operationId":"update_business_system_api_settings_business_systems__sys_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"sys_id","in":"path","required":true,"schema":{"type":"string","title":"Sys Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Business System","operationId":"delete_business_system_api_settings_business_systems__sys_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"sys_id","in":"path","required":true,"schema":{"type":"string","title":"Sys Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/business-systems/{sys_id}/test":{"post":{"summary":"Test Business System","operationId":"test_business_system_api_settings_business_systems__sys_id__test_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"sys_id","in":"path","required":true,"schema":{"type":"string","title":"Sys Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/business-systems/{sys_id}/toggle":{"post":{"summary":"Toggle Business System","operationId":"toggle_business_system_api_settings_business_systems__sys_id__toggle_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"sys_id","in":"path","required":true,"schema":{"type":"string","title":"Sys Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/db-connections":{"get":{"summary":"List Db Connections","operationId":"list_db_connections_api_settings_db_connections_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"type_filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type Filter"}},{"name":"enabled_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Enabled Only"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create Db Connection","operationId":"create_db_connection_api_settings_db_connections_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/db-connections/{conn_id}":{"put":{"summary":"Update Db Connection","operationId":"update_db_connection_api_settings_db_connections__conn_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"conn_id","in":"path","required":true,"schema":{"type":"string","title":"Conn Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Db Connection","operationId":"delete_db_connection_api_settings_db_connections__conn_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"conn_id","in":"path","required":true,"schema":{"type":"string","title":"Conn Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/db-connections/{conn_id}/test":{"post":{"summary":"Test Db Connection","operationId":"test_db_connection_api_settings_db_connections__conn_id__test_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"conn_id","in":"path","required":true,"schema":{"type":"string","title":"Conn Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/ssh-credentials":{"get":{"summary":"List Ssh Credentials","operationId":"list_ssh_credentials_api_settings_ssh_credentials_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"enabled_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Enabled Only"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create Ssh Credential","operationId":"create_ssh_credential_api_settings_ssh_credentials_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/ssh-credentials/{cred_id}":{"put":{"summary":"Update Ssh Credential","operationId":"update_ssh_credential_api_settings_ssh_credentials__cred_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"cred_id","in":"path","required":true,"schema":{"type":"string","title":"Cred Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Ssh Credential","operationId":"delete_ssh_credential_api_settings_ssh_credentials__cred_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"cred_id","in":"path","required":true,"schema":{"type":"string","title":"Cred Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/ssh-credentials/{cred_id}/test":{"post":{"summary":"Test Ssh Credential","operationId":"test_ssh_credential_api_settings_ssh_credentials__cred_id__test_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"cred_id","in":"path","required":true,"schema":{"type":"string","title":"Cred Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/channels":{"get":{"summary":"List Channels","description":"用户端渠道列表：**只返回管理员已开放（enabled）的渠道**，\n并把当前用户在该渠道上的绑定状态合并进来，前端一次拿全。","operationId":"list_channels_api_settings_channels_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/channels/catalog":{"get":{"summary":"Channel Catalog","description":"渠道类型模板（新建渠道时前端渲染表单字段用）。","operationId":"channel_catalog_api_settings_channels_catalog_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/settings/channels/{channel_id}/test":{"post":{"summary":"Test Channel","description":"渠道连通性测试。带 `config` 时用表单里的临时值测（保存前先验）。","operationId":"test_channel_api_settings_channels__channel_id__test_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"channel_id","in":"path","required":true,"schema":{"type":"string","title":"Channel Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/channel-bindings":{"get":{"summary":"List Channel Bindings","operationId":"list_channel_bindings_api_settings_channel_bindings_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"channel","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Channel"}},{"name":"bound_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Bound Only"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Upsert Channel Binding","operationId":"upsert_channel_binding_api_settings_channel_bindings_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/channel-bindings/{cb_id}":{"put":{"summary":"Update Channel Binding","operationId":"update_channel_binding_api_settings_channel_bindings__cb_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"cb_id","in":"path","required":true,"schema":{"type":"string","title":"Cb Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Channel Binding","operationId":"delete_channel_binding_api_settings_channel_bindings__cb_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"cb_id","in":"path","required":true,"schema":{"type":"string","title":"Cb Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/channel-bindings/{cb_id}/test":{"post":{"summary":"Test Channel Binding","operationId":"test_channel_binding_api_settings_channel_bindings__cb_id__test_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"cb_id","in":"path","required":true,"schema":{"type":"string","title":"Cb Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/device-protocols":{"get":{"summary":"List Device Protocols","operationId":"list_device_protocols_api_settings_device_protocols_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"type_filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type Filter"}},{"name":"enabled_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Enabled Only"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create Device Protocol","operationId":"create_device_protocol_api_settings_device_protocols_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/device-protocols/{proto_id}":{"put":{"summary":"Update Device Protocol","operationId":"update_device_protocol_api_settings_device_protocols__proto_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"proto_id","in":"path","required":true,"schema":{"type":"string","title":"Proto Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Device Protocol","operationId":"delete_device_protocol_api_settings_device_protocols__proto_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"proto_id","in":"path","required":true,"schema":{"type":"string","title":"Proto Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/device-protocols/{proto_id}/test":{"post":{"summary":"Test Device Protocol","operationId":"test_device_protocol_api_settings_device_protocols__proto_id__test_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"proto_id","in":"path","required":true,"schema":{"type":"string","title":"Proto Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/business-systems/test-draft":{"post":{"summary":"Test Business System Draft","operationId":"test_business_system_draft_api_settings_business_systems_test_draft_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload","default":{}}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/settings/db-connections/test-draft":{"post":{"summary":"Test Db Connection Draft","operationId":"test_db_connection_draft_api_settings_db_connections_test_draft_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload","default":{}}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/settings/ssh-credentials/test-draft":{"post":{"summary":"Test Ssh Connection Draft","operationId":"test_ssh_connection_draft_api_settings_ssh_credentials_test_draft_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload","default":{}}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/settings/device-protocols/test-draft":{"post":{"summary":"Test Device Protocol Draft","operationId":"test_device_protocol_draft_api_settings_device_protocols_test_draft_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload","default":{}}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/settings/prompts":{"get":{"summary":"List Prompt Templates","operationId":"list_prompt_templates_api_settings_prompts_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"category","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category"}},{"name":"preset_only","in":"query","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Preset Only"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create Prompt Template","operationId":"create_prompt_template_api_settings_prompts_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/prompts/{tpl_id}":{"put":{"summary":"Update Prompt Template","operationId":"update_prompt_template_api_settings_prompts__tpl_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"tpl_id","in":"path","required":true,"schema":{"type":"string","title":"Tpl Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Prompt Template","operationId":"delete_prompt_template_api_settings_prompts__tpl_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"tpl_id","in":"path","required":true,"schema":{"type":"string","title":"Tpl Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/statistics":{"get":{"summary":"Get Statistics","description":"用量统计：全局 / 单 Agent 两维度 × 近 7 天 / 本月 / 近 90 天。\n\nagent 维度直接取 ``llm_usage_logs.agent_id``（真实执行归属，非 chat_id 推断）。\n传 ``days`` 时按旧天数口径计算，保持老前端兼容。","operationId":"get_statistics_api_settings_statistics_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"period","in":"query","required":false,"schema":{"type":"string","description":"统计周期：7d | month | 90d","default":"7d","title":"Period"},"description":"统计周期：7d | month | 90d"},{"name":"agent_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Agent 维度过滤，空=全局","title":"Agent Id"},"description":"Agent 维度过滤，空=全局"},{"name":"days","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","maximum":365,"minimum":1},{"type":"null"}],"description":"[兼容] 旧的天数口径","title":"Days"},"description":"[兼容] 旧的天数口径"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/storage-usage":{"get":{"summary":"Get Storage Usage","operationId":"get_storage_usage_api_settings_storage_usage_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/settings/statistics/snapshot":{"post":{"summary":"Record Usage Snapshot","operationId":"record_usage_snapshot_api_settings_statistics_snapshot_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Metrics"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/settings/backups":{"get":{"summary":"List Backups","operationId":"list_backups_api_settings_backups_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create Backup Record","operationId":"create_backup_record_api_settings_backups_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/backups/{backup_id}":{"delete":{"summary":"Delete Backup","operationId":"delete_backup_api_settings_backups__backup_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"backup_id","in":"path","required":true,"schema":{"type":"string","title":"Backup Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/backups/{backup_id}/restore":{"post":{"summary":"Restore Backup","operationId":"restore_backup_api_settings_backups__backup_id__restore_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"backup_id","in":"path","required":true,"schema":{"type":"string","title":"Backup Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/backups/{backup_id}/download":{"get":{"summary":"Download Backup","description":"真实文件下载。\n\nContent-Disposition 只允许 latin-1，直接放中文文件名会 500；\n故用 RFC 5987 ``filename*=UTF-8''<quote(name)>`` 表达中文名，\n并保留 ASCII 回退 ``filename`` 兼容老客户端。","operationId":"download_backup_api_settings_backups__backup_id__download_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"backup_id","in":"path","required":true,"schema":{"type":"string","title":"Backup Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/export":{"get":{"summary":"Export All Settings","operationId":"export_all_settings_api_settings_export_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/settings/import":{"post":{"summary":"Import Settings","operationId":"import_settings_api_settings_import_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/settings/business-systems/{sys_id}/field-mappings":{"get":{"summary":"List Field Mappings","operationId":"list_field_mappings_api_settings_business_systems__sys_id__field_mappings_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"sys_id","in":"path","required":true,"schema":{"type":"string","title":"Sys Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create Field Mapping","operationId":"create_field_mapping_api_settings_business_systems__sys_id__field_mappings_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"sys_id","in":"path","required":true,"schema":{"type":"string","title":"Sys Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/business-systems/{sys_id}/field-mappings/{mapping_id}":{"put":{"summary":"Update Field Mapping","operationId":"update_field_mapping_api_settings_business_systems__sys_id__field_mappings__mapping_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"sys_id","in":"path","required":true,"schema":{"type":"string","title":"Sys Id"}},{"name":"mapping_id","in":"path","required":true,"schema":{"type":"string","title":"Mapping Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Field Mapping","operationId":"delete_field_mapping_api_settings_business_systems__sys_id__field_mappings__mapping_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"sys_id","in":"path","required":true,"schema":{"type":"string","title":"Sys Id"}},{"name":"mapping_id","in":"path","required":true,"schema":{"type":"string","title":"Mapping Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/business-systems/{sys_id}/field-mappings/batch":{"post":{"summary":"Batch Create Field Mappings","operationId":"batch_create_field_mappings_api_settings_business_systems__sys_id__field_mappings_batch_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"sys_id","in":"path","required":true,"schema":{"type":"string","title":"Sys Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/skills/market/search":{"get":{"summary":"Search Skill Market","operationId":"search_skill_market_api_settings_skills_market_search_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}},{"name":"source","in":"query","required":false,"schema":{"type":"string","default":"clawhub","title":"Source"}},{"name":"category","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"default":1,"title":"Page"}},{"name":"page_size","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Page Size"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/skills/market/install":{"post":{"summary":"Install Skill From Market","operationId":"install_skill_from_market_api_settings_skills_market_install_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/settings/ssh-credentials/{cred_id}/upload-key":{"post":{"summary":"Upload Ssh Key","description":"上传 SSH 私钥文件。\n\n注意：这是**用户级**能力（普通用户给自己建的凭据传密钥），因此不能用\nrequire_admin；归属校验由 service 的 `_ensure_can_mutate` 负责\n（本人资源可改，系统预置资源仅管理员可改）。\n\n历史缺陷：形参写成 `admin`、函数体却引用未定义的 `user` → 必然 NameError 500。","operationId":"upload_ssh_key_api_settings_ssh_credentials__cred_id__upload_key_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"cred_id","in":"path","required":true,"schema":{"type":"string","title":"Cred Id"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_upload_ssh_key_api_settings_ssh_credentials__cred_id__upload_key_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/migration-sources":{"get":{"summary":"List Migration Sources","operationId":"list_migration_sources_api_settings_migration_sources_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]},"post":{"summary":"Create Migration Source","operationId":"create_migration_source_api_settings_migration_sources_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/settings/migration-sources/{source_id}":{"put":{"summary":"Update Migration Source","operationId":"update_migration_source_api_settings_migration_sources__source_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Migration Source","operationId":"delete_migration_source_api_settings_migration_sources__source_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/migration-sources/{source_id}/import":{"post":{"summary":"Import From Source","operationId":"import_from_source_api_settings_migration_sources__source_id__import_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/field-mappings":{"get":{"summary":"List Field Mapping Entries","operationId":"list_field_mapping_entries_api_settings_field_mappings_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"target_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target Type"}},{"name":"target_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target Id"}},{"name":"scope","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Scope"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create Field Mapping Entry","operationId":"create_field_mapping_entry_api_settings_field_mappings_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/field-mappings/{entry_id}":{"put":{"summary":"Update Field Mapping Entry","operationId":"update_field_mapping_entry_api_settings_field_mappings__entry_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"entry_id","in":"path","required":true,"schema":{"type":"string","title":"Entry Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Field Mapping Entry","operationId":"delete_field_mapping_entry_api_settings_field_mappings__entry_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"entry_id","in":"path","required":true,"schema":{"type":"string","title":"Entry Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/field-mappings/import":{"post":{"summary":"Import Field Mappings","description":"把 L1 探测结果批量导入映射库（幂等，不覆盖已有 L2 语义）。","operationId":"import_field_mappings_api_settings_field_mappings_import_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/settings/field-mappings/resolve":{"get":{"summary":"Resolve Field Mapping","description":"自然语言 → 字段 反查（Schema Bridge 自检）。","operationId":"resolve_field_mapping_api_settings_field_mappings_resolve_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string","minLength":1,"title":"Q"}},{"name":"target_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target Type"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/databases/{conn_id}/schema":{"get":{"summary":"Probe Database Schema","description":"L1 元数据探测：真实连库读取表/列/主键。","operationId":"probe_database_schema_api_settings_databases__conn_id__schema_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"conn_id","in":"path","required":true,"schema":{"type":"string","title":"Conn Id"}},{"name":"table","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Table"}},{"name":"limit_tables","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit Tables"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/databases/{conn_id}/query":{"post":{"summary":"Run Database Query","description":"受限只读查询：仅允许 SELECT，用于「先看一眼数据长什么样」再决定映射。","operationId":"run_database_query_api_settings_databases__conn_id__query_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"conn_id","in":"path","required":true,"schema":{"type":"string","title":"Conn Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/business-systems/{sys_id}/scan-api":{"post":{"summary":"Scan Business System Api","description":"L1 自动发现：优先解析 OpenAPI/Swagger 规范，拿不到就真实探测常见路径。\n\n返回里 `spec_found` 如实标注是否真的读到规范；探测失败原因逐条回传，\n不假装「已扫描出全部接口」。","operationId":"scan_business_system_api_api_settings_business_systems__sys_id__scan_api_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"sys_id","in":"path","required":true,"schema":{"type":"string","title":"Sys Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/business-systems/{sys_id}/auto-mapping":{"post":{"summary":"Auto Build Business Mapping","description":"一键：扫描接口 → 大模型语义标注 → 按 scope 落成多张字段映射表。","operationId":"auto_build_business_mapping_api_settings_business_systems__sys_id__auto_mapping_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"sys_id","in":"path","required":true,"schema":{"type":"string","title":"Sys Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/field-mappings/tables":{"get":{"summary":"List Field Mapping Tables","description":"按 scope 列出某个目标下的映射表清单（一个系统可以有多张表）。","operationId":"list_field_mapping_tables_api_settings_field_mappings_tables_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"target_type","in":"query","required":false,"schema":{"type":"string","default":"business_system","title":"Target Type"}},{"name":"target_id","in":"query","required":true,"schema":{"type":"string","title":"Target Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/field-mappings/template":{"get":{"summary":"Download Field Mapping Template","description":"下载字段映射模板。\n\n若指定 target+scope 且该表已有 L1 字段，则把技术字段与样例值预填进模板，\n用户只需补「业务名称」列 —— 这就是用户要求的「模板填好再上传」路径。","operationId":"download_field_mapping_template_api_settings_field_mappings_template_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"format","in":"query","required":false,"schema":{"type":"string","default":"csv","title":"Format"}},{"name":"target_type","in":"query","required":false,"schema":{"type":"string","default":"business_system","title":"Target Type"}},{"name":"target_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target Id"}},{"name":"scope","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Scope"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/field-mappings/import-file":{"post":{"summary":"Import Field Mapping File","description":"上传 CSV / Excel 模板 → 直接写入映射表（人工内容优先级最高）。","operationId":"import_field_mapping_file_api_settings_field_mappings_import_file_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"target_type","in":"query","required":false,"schema":{"type":"string","default":"business_system","title":"Target Type"}},{"name":"target_id","in":"query","required":true,"schema":{"type":"string","title":"Target Id"}},{"name":"target_name","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target Name"}},{"name":"scope","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Scope"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_import_field_mapping_file_api_settings_field_mappings_import_file_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/interface-requests":{"get":{"summary":"List My Interface Requests","description":"我提交的连接申请（按 requester_id 行级隔离，看不到别人的）。","operationId":"list_my_interface_requests_api_settings_interface_requests_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]},"post":{"summary":"Submit Interface Request","description":"提交连接申请。凭据类字段会被白名单挡掉 —— 由管理员在审批时补齐。","operationId":"submit_interface_request_api_settings_interface_requests_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload","default":{}}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/settings/interface-requests/{req_id}":{"delete":{"summary":"Withdraw Interface Request","description":"撤回自己未审批的申请。","operationId":"withdraw_interface_request_api_settings_interface_requests__req_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"req_id","in":"path","required":true,"schema":{"type":"string","title":"Req Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/{key}":{"get":{"summary":"Get Setting","description":"兼容旧API：获取单 key 设置（先查用户，再查系统）。","operationId":"get_setting_api_settings__key__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"key","in":"path","required":true,"schema":{"type":"string","title":"Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Update Setting","description":"兼容旧API：更新单 key 用户设置。","operationId":"update_setting_api_settings__key__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"key","in":"path","required":true,"schema":{"type":"string","title":"Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSettingRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/skills":{"get":{"summary":"List Skills","operationId":"list_skills_api_skills_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","default":1,"title":"Page"}},{"name":"page_size","in":"query","required":false,"schema":{"type":"integer","default":20,"title":"Page Size"}},{"name":"category","in":"query","required":false,"schema":{"type":"string","title":"Category"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create Skill Endpoint","operationId":"create_skill_endpoint_api_skills_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSkillRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/skills/{skill_id}":{"get":{"summary":"Get Skill Endpoint","operationId":"get_skill_endpoint_api_skills__skill_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Update Skill Endpoint","operationId":"update_skill_endpoint_api_skills__skill_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/yagent__app__skills__router__UpdateSkillRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Skill Endpoint","operationId":"delete_skill_endpoint_api_skills__skill_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/skills-market/system":{"get":{"summary":"List System Skills","description":"返回「从服务器添加」的候选技能：平台内置技能 + 本人自建技能。\n\n注意：不返回其他用户的私有技能。","operationId":"list_system_skills_api_skills_market_system_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"agent_id","in":"query","required":false,"schema":{"type":"string","title":"Agent Id"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/skills-market/search":{"get":{"summary":"Search Market Skills","description":"技能市场搜索 — SEC-10 双源融合搜索\n\n搜索流程:\n  1. 本地内置仓库（必返回，无网络也能搜）\n  2. OpenClaw 远程市场（需配置 API Key，无 Key 静默降级）\n  3. 合并去重后返回\n\nArgs:\n    source: \"all\"=全部, \"local\"=仅本地, \"openclaw\"=仅远程\n    q: 搜索关键词","operationId":"search_market_skills_api_skills_market_search_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"source","in":"query","required":false,"schema":{"type":"string","default":"all","title":"Source"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/sop/templates":{"get":{"summary":"Get Templates","operationId":"get_templates_api_sop_templates_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]},"post":{"summary":"Create Template","operationId":"create_template_api_sop_templates_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SOPTemplateCreateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/sop/templates/import":{"post":{"summary":"Import Preset","operationId":"import_preset_api_sop_templates_import_post","parameters":[{"name":"preset_name","in":"query","required":true,"schema":{"type":"string","title":"Preset Name"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/sop/instances":{"post":{"summary":"Create Instance","operationId":"create_instance_api_sop_instances_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SOPInstanceRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/sop/instances/{instance_id}":{"get":{"summary":"Get Instance","operationId":"get_instance_api_sop_instances__instance_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"instance_id","in":"path","required":true,"schema":{"type":"string","title":"Instance Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/sop/instances/{instance_id}/logs":{"get":{"summary":"Get Instance Logs","operationId":"get_instance_logs_api_sop_instances__instance_id__logs_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"instance_id","in":"path","required":true,"schema":{"type":"string","title":"Instance Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/sop/instances/{instance_id}/confirm":{"post":{"summary":"Confirm Human Step","operationId":"confirm_human_step_api_sop_instances__instance_id__confirm_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"instance_id","in":"path","required":true,"schema":{"type":"string","title":"Instance Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/corpus/dialogues":{"post":{"summary":"Create Dialogue","operationId":"create_dialogue_api_corpus_dialogues_post","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DialogueCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"summary":"Get Dialogues","operationId":"get_dialogues_api_corpus_dialogues_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","default":1,"title":"Page"}},{"name":"page_size","in":"query","required":false,"schema":{"type":"integer","default":20,"title":"Page Size"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/corpus/dialogues/{corpus_id}/feedback":{"post":{"summary":"Add Feedback","operationId":"add_feedback_api_corpus_dialogues__corpus_id__feedback_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"corpus_id","in":"path","required":true,"schema":{"type":"string","title":"Corpus Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeedbackRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/corpus/search":{"get":{"summary":"Search Corpus","operationId":"search_corpus_api_corpus_search_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"query","in":"query","required":true,"schema":{"type":"string","title":"Query"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":5,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/corpus/intent/classify":{"get":{"summary":"Classify Intent","operationId":"classify_intent_api_corpus_intent_classify_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"query","in":"query","required":true,"schema":{"type":"string","title":"Query"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/llm/chat":{"post":{"summary":"Chat","operationId":"chat_api_llm_chat_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChatRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/llm/chat/rag":{"post":{"summary":"Rag Chat","operationId":"rag_chat_api_llm_chat_rag_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RAGChatRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/llm/embedding":{"post":{"summary":"Embedding","operationId":"embedding_api_llm_embedding_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"text","in":"query","required":true,"schema":{"type":"string","title":"Text"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/models/":{"get":{"summary":"List Models","operationId":"list_models_api_models__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"enabled_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Enabled Only"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","additionalProperties":true},"title":"Response List Models Api Models  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create Model Endpoint","operationId":"create_model_endpoint_api_models__post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModelCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Create Model Endpoint Api Models  Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/models/{model_id}":{"get":{"summary":"Get Model Detail","operationId":"get_model_detail_api_models__model_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"model_id","in":"path","required":true,"schema":{"type":"string","title":"Model Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Model Detail Api Models  Model Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Update Model Endpoint","operationId":"update_model_endpoint_api_models__model_id__put","parameters":[{"name":"model_id","in":"path","required":true,"schema":{"type":"string","title":"Model Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModelUpdateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Update Model Endpoint Api Models  Model Id  Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Model Endpoint","operationId":"delete_model_endpoint_api_models__model_id__delete","parameters":[{"name":"model_id","in":"path","required":true,"schema":{"type":"string","title":"Model Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/models/{model_id}/test":{"post":{"summary":"Test Model Connection","operationId":"test_model_connection_api_models__model_id__test_post","parameters":[{"name":"model_id","in":"path","required":true,"schema":{"type":"string","title":"Model Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/models/default":{"get":{"summary":"Get Default Model Endpoint","operationId":"get_default_model_endpoint_api_models_default_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Response Get Default Model Endpoint Api Models Default Get"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/models/{model_id}/default":{"put":{"summary":"Set Default Model Endpoint","operationId":"set_default_model_endpoint_api_models__model_id__default_put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"model_id","in":"path","required":true,"schema":{"type":"string","title":"Model Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Set Default Model Endpoint Api Models  Model Id  Default Put"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/models/user/models":{"get":{"summary":"Get User Models Endpoint","operationId":"get_user_models_endpoint_api_models_user_models_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Response Get User Models Endpoint Api Models User Models Get"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/models/user/access":{"put":{"summary":"Set User Model Access Endpoint","operationId":"set_user_model_access_endpoint_api_models_user_access_put","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModelAccessRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/profile/me":{"get":{"tags":["user-profile"],"summary":"Get My Profile","description":"查看系统对我的了解（自动注入用的画像断言 + 采集统计）。","operationId":"get_my_profile_api_profile_me_get","security":[{"HTTPBearer":[]}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"delete":{"tags":["user-profile"],"summary":"Clear My Profile","description":"「清除对我的了解」—— 合规要求：用户可删除系统对自己的画像。","operationId":"clear_my_profile_api_profile_me_delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"also_signals","in":"query","required":false,"schema":{"type":"boolean","description":"是否一并清除行为信号流水","default":true,"title":"Also Signals"},"description":"是否一并清除行为信号流水"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/user-profiles":{"get":{"tags":["user-profile"],"summary":"List User Profiles","description":"画像概览列表（只列有画像的用户）。","operationId":"list_user_profiles_api_admin_user_profiles_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/user-profiles/{user_id}":{"get":{"tags":["user-profile"],"summary":"Get User Profile Detail","description":"画像详情：断言、证据数、跨 Agent 见证来源、信号统计。","operationId":"get_user_profile_detail_api_admin_user_profiles__user_id__get","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["user-profile"],"summary":"Admin Clear User Profile","description":"管理员清除某用户画像（合规响应）。","operationId":"admin_clear_user_profile_api_admin_user_profiles__user_id__delete","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/user-profiles/{user_id}/signals":{"get":{"tags":["user-profile"],"summary":"List User Signals","description":"行为信号流水（脱敏后的内容），用于审计与排障。","operationId":"list_user_signals_api_admin_user_profiles__user_id__signals_get","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}},{"name":"only_unprocessed","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Only Unprocessed"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["user-profile"],"summary":"Add User Signal","description":"手工补录一条行为信号（排障 / 测试）。","operationId":"add_user_signal_api_admin_user_profiles__user_id__signals_post","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SignalCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/user-profiles/{user_id}/induce":{"post":{"tags":["user-profile"],"summary":"Induce User Profile","description":"手动触发一次画像提炼（排障 / 即时生效用）。","operationId":"induce_user_profile_api_admin_user_profiles__user_id__induce_post","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}},{"name":"force","in":"query","required":false,"schema":{"type":"boolean","description":"忽略最少信号数阈值","default":true,"title":"Force"},"description":"忽略最少信号数阈值"},{"name":"use_llm","in":"query","required":false,"schema":{"type":"boolean","description":"是否允许走 LLM（关掉则纯启发式）","default":true,"title":"Use Llm"},"description":"是否允许走 LLM（关掉则纯启发式）"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/model/versions":{"get":{"summary":"Get Model Versions","operationId":"get_model_versions_api_model_versions_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]},"post":{"summary":"Create Model Version","operationId":"create_model_version_api_model_versions_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModelVersionRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/training/stats":{"get":{"summary":"Get Training Stats","operationId":"get_training_stats_api_training_stats_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/training/prepare":{"post":{"summary":"Prepare Dataset","operationId":"prepare_dataset_api_training_prepare_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"intent_filter","in":"query","required":false,"schema":{"type":"string","title":"Intent Filter"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":1000,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/training/jobs":{"get":{"summary":"Get Training Jobs","operationId":"get_training_jobs_api_training_jobs_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]},"post":{"summary":"Create Training Job","operationId":"create_training_job_api_training_jobs_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TrainingRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/training/jobs/{job_id}":{"get":{"summary":"Get Training Job","operationId":"get_training_job_api_training_jobs__job_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"job_id","in":"path","required":true,"schema":{"type":"string","title":"Job Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/evolution/analyze":{"post":{"summary":"Analyze Feedback","operationId":"analyze_feedback_api_evolution_analyze_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"days","in":"query","required":false,"schema":{"type":"integer","default":7,"title":"Days"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/evolution/optimize-prompt":{"post":{"summary":"Optimize Prompt","operationId":"optimize_prompt_api_evolution_optimize_prompt_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"intent","in":"query","required":true,"schema":{"type":"string","title":"Intent"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/evolution/auto-trigger":{"post":{"summary":"Auto Trigger Training","operationId":"auto_trigger_training_api_evolution_auto_trigger_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"threshold","in":"query","required":false,"schema":{"type":"number","default":0.3,"title":"Threshold"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/evolution/records":{"get":{"summary":"Get Evolution Records","operationId":"get_evolution_records_api_evolution_records_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/list":{"get":{"tags":["tools"],"summary":"Get Tools List","description":"内置工具注册表：返回 /tools/execute 可调度的工具及其参数说明。\n\n说明：这是一份「调度器能力清单」的静态元数据，本身不含业务数据；\n各工具的真实实现位于 /tools/execute 的对应分支。","operationId":"get_tools_list_api_tools_list_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Response Get Tools List Api Tools List Get"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/execute":{"post":{"tags":["tools"],"summary":"Execute Tool","operationId":"execute_tool_api_tools_execute_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ToolExecuteRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ToolExecuteResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/browser/list":{"get":{"tags":["tools"],"summary":"Get Browser List","description":"返回本机真实检测到的浏览器（按可执行文件是否存在判定）。\n\n历史实现硬编码了版本号 120.0.0.0 与插件清单等编造字段，已移除；\n现在只回报文件系统能证明的事实：路径是否存在。","operationId":"get_browser_list_api_tools_browser_list_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Response Get Browser List Api Tools Browser List Get"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/browser/config":{"post":{"tags":["tools"],"summary":"Update Browser Config","description":"未实现（501）：后端没有浏览器启动配置的持久化存储。\n\n浏览器路径/参数均由本机探测或默认值决定，没有可供写入的配置表；\n因此这里不再返回「配置已更新」的成功假消息。","operationId":"update_browser_config_api_tools_browser_config_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Config"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Update Browser Config Api Tools Browser Config Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/browser/launch":{"post":{"tags":["tools"],"summary":"Launch Browser","description":"启动本机浏览器：仅在可执行文件真实存在时启动。","operationId":"launch_browser_api_tools_browser_launch_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"browser_id","in":"query","required":false,"schema":{"type":"string","default":"chrome","title":"Browser Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Launch Browser Api Tools Browser Launch Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/tools/skills/list":{"get":{"tags":["tools"],"summary":"Get Skills List","description":"当前用户可见的技能（本人私有 + 系统预置 + 平台目录），来自真实注册表。","operationId":"get_skills_list_api_tools_skills_list_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Response Get Skills List Api Tools Skills List Get"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/skills/market":{"get":{"tags":["tools"],"summary":"Get Skills Market","description":"技能市场搜索：真实拉取内置仓库 + ClawHub / npm / 用户自定义源。","operationId":"get_skills_market_api_tools_skills_market_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"query","in":"query","required":false,"schema":{"type":"string","default":"","title":"Query"}},{"name":"source","in":"query","required":false,"schema":{"type":"string","default":"clawhub","title":"Source"}},{"name":"category","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"default":1,"title":"Page"}},{"name":"page_size","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Page Size"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Skills Market Api Tools Skills Market Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/tools/skills/install":{"post":{"tags":["tools"],"summary":"Install Skill","description":"从技能市场安装技能：真实落库 GlobalSkillRegistry 并标注来源。","operationId":"install_skill_api_tools_skills_install_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Install Skill Api Tools Skills Install Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/skills/uninstall":{"post":{"tags":["tools"],"summary":"Uninstall Skill","description":"卸载技能：平台目录条目走「取消本地安装」，自有技能走真实删除。","operationId":"uninstall_skill_api_tools_skills_uninstall_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"skill_id","in":"query","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Uninstall Skill Api Tools Skills Uninstall Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/tools/skills/create":{"post":{"tags":["tools"],"summary":"Create Skill","description":"自定义创建技能：真实落库 GlobalSkillRegistry。","operationId":"create_skill_api_tools_skills_create_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Create Skill Api Tools Skills Create Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/plugins/list":{"get":{"tags":["tools"],"summary":"Get Plugins List","description":"未实现（501）：YAgent 没有独立的「插件」注册表。\n\n功能最接近的真实模块是：技能（/api/settings/skills）与\nMCP 服务（/api/settings/mcp）。历史实现返回的是硬编码清单，已移除。","operationId":"get_plugins_list_api_tools_plugins_list_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"source","in":"query","required":false,"schema":{"type":"string","default":"local","title":"Source"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/tools/plugins/search":{"get":{"tags":["tools"],"summary":"Search Plugins","description":"未实现（501）：无独立插件市场。\n\n技能市场搜索请使用 /api/settings/skills/market/search（真实拉取 ClawHub/npm）。","operationId":"search_plugins_api_tools_plugins_search_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"query","in":"query","required":false,"schema":{"type":"string","default":"","title":"Query"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/tools/plugins/install":{"post":{"tags":["tools"],"summary":"Install Plugin","description":"未实现（501）：无独立插件安装能力。\n\n技能安装请使用 /api/settings/skills/market/install。","operationId":"install_plugin_api_tools_plugins_install_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"plugin_id","in":"query","required":true,"schema":{"type":"string","title":"Plugin Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/tools/database/list":{"get":{"tags":["tools"],"summary":"Get Database List","description":"当前用户可见的数据库连接（本人私有 + 系统预置），来自真实表。","operationId":"get_database_list_api_tools_database_list_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Response Get Database List Api Tools Database List Get"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/database/connect":{"post":{"tags":["tools"],"summary":"Connect Database","description":"测试指定数据库连接的真实连通性（TCP ping）。","operationId":"connect_database_api_tools_database_connect_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Connect Database Api Tools Database Connect Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/database/query":{"post":{"tags":["tools"],"summary":"Execute Query","description":"对真实连接执行受限只读查询（仅允许 SELECT，白名单校验）。","operationId":"execute_query_api_tools_database_query_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Execute Query Api Tools Database Query Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/database/add":{"post":{"tags":["tools"],"summary":"Add Database","description":"新增数据库连接：真实落库 DatabaseConnection（对接 settings_mgmt 模型）。","operationId":"add_database_api_tools_database_add_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Add Database Api Tools Database Add Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/api/list":{"get":{"tags":["tools"],"summary":"Get Api List","description":"未实现（501）：没有独立的「API 连接」注册表。\n\nYAgent 中与之对应的真实模块是业务系统接口（/api/settings/business-systems，\nBusinessSystem 记录 endpoint/authType/apiKey）与管理员级外部 API 凭证\n（/api/admin/settings/external-apis）。历史实现返回硬编码清单，已移除。","operationId":"get_api_list_api_tools_api_list_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/api/test":{"post":{"tags":["tools"],"summary":"Test Api","description":"未实现（501）：没有通用 API 探活实现。\n\n业务系统连通性测试请使用 POST /api/settings/business-systems/{sys_id}/test（真实请求）。","operationId":"test_api_api_tools_api_test_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"api_id","in":"query","required":true,"schema":{"type":"string","title":"Api Id"}},{"name":"endpoint","in":"query","required":false,"schema":{"type":"string","default":"/","title":"Endpoint"}},{"name":"method","in":"query","required":false,"schema":{"type":"string","default":"GET","title":"Method"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/tools/api/add":{"post":{"tags":["tools"],"summary":"Add Api Connection","description":"未实现（501）：没有独立的 API 连接存储。\n\n业务系统请使用 POST /api/settings/business-systems；\n外部 API 凭证请使用 POST /api/admin/settings/external-apis。","operationId":"add_api_connection_api_tools_api_add_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Api"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/chart/list":{"get":{"tags":["tools"],"summary":"Get Chart List","description":"未实现（501）：后端没有图表的持久化/注册表。\n\n图表由前端图表工作区（ChartWorkspace / ECharts）渲染，无服务端图表清单。","operationId":"get_chart_list_api_tools_chart_list_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/chart/create":{"post":{"tags":["tools"],"summary":"Create Chart","description":"未实现（501）：后端没有图表定义存储，无法持久化图表。","operationId":"create_chart_api_tools_chart_create_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Chart"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/chart/refresh":{"post":{"tags":["tools"],"summary":"Refresh Chart","description":"未实现（501）：后端没有图表数据源，无法刷新图表数据。\n\n历史实现返回的是编造的 labels/values，已移除。","operationId":"refresh_chart_api_tools_chart_refresh_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"chart_id","in":"query","required":true,"schema":{"type":"string","title":"Chart Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/tools/mcp/list":{"get":{"tags":["tools"],"summary":"Get Mcp List","description":"当前用户可见的 MCP 服务（本人私有 + 系统预置），来自真实表。","operationId":"get_mcp_list_api_tools_mcp_list_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Response Get Mcp List Api Tools Mcp List Get"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/mcp/toggle":{"post":{"tags":["tools"],"summary":"Toggle Mcp","description":"启用/禁用 MCP 服务：真实改写 GlobalMcpServer.autoStart。","operationId":"toggle_mcp_api_tools_mcp_toggle_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Toggle Mcp Api Tools Mcp Toggle Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/mcp/uninstall":{"post":{"tags":["tools"],"summary":"Uninstall Mcp","description":"卸载 MCP 服务：真实删除 GlobalMcpServer 记录。","operationId":"uninstall_mcp_api_tools_mcp_uninstall_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"mcp_id","in":"query","required":true,"schema":{"type":"string","title":"Mcp Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Uninstall Mcp Api Tools Mcp Uninstall Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/tools/settings/get":{"get":{"tags":["tools"],"summary":"Get Settings","description":"返回当前用户的真实通用设置（与 /api/settings/general 同源）。","operationId":"get_settings_api_tools_settings_get_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Get Settings Api Tools Settings Get Get"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/settings/save":{"post":{"tags":["tools"],"summary":"Save Settings","description":"保存当前用户的通用设置：真实写入 UserSettings。","operationId":"save_settings_api_tools_settings_save_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Settings"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Save Settings Api Tools Settings Save Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/tools/network/test":{"get":{"tags":["tools"],"summary":"Test Network","description":"测量到公网的往返延迟。\n\n注：历史实现在此编造了 upload_speed / download_speed 两个带宽字段，\n本接口并不做带宽测速，已移除这两个编造字段，只保留真实可测的延迟。","operationId":"test_network_api_tools_network_test_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Test Network Api Tools Network Test Get"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/workflow/generate":{"post":{"summary":"Generate Workflow","description":"根据文字描述生成流程图。\n\n注意：LLM 不可用时**如实报错**，不再回退到本地硬编码的「演示流程图」——\n那会把失败伪装成成功，前端无法察觉（历史缺陷，已移除）。","operationId":"generate_workflow_api_workflow_generate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowGenerateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowGenerateResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/workflow/optimize":{"post":{"summary":"Optimize Workflow","description":"根据反馈优化现有流程图","operationId":"optimize_workflow_api_workflow_optimize_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowOptimizeRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowGenerateResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/webhooks":{"get":{"summary":"List Webhooks","operationId":"list_webhooks_api_webhooks_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]},"post":{"summary":"Create Webhook","operationId":"create_webhook_api_webhooks_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookRegisterRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/webhooks/{webhook_id}":{"put":{"summary":"Update Webhook","operationId":"update_webhook_api_webhooks__webhook_id__put","parameters":[{"name":"webhook_id","in":"path","required":true,"schema":{"type":"string","title":"Webhook Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookUpdateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Webhook","operationId":"delete_webhook_api_webhooks__webhook_id__delete","parameters":[{"name":"webhook_id","in":"path","required":true,"schema":{"type":"string","title":"Webhook Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/webhooks/{webhook_id}/test":{"post":{"summary":"Test Webhook","operationId":"test_webhook_api_webhooks__webhook_id__test_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"webhook_id","in":"path","required":true,"schema":{"type":"string","title":"Webhook Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/workflows":{"get":{"summary":"List Workflows","operationId":"list_workflows_api_workflows_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]},"post":{"summary":"Save Workflow","description":"保存/更新工作流定义（graph 为节点图 JSON）。","operationId":"save_workflow_api_workflows_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowSaveRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/workflows/{workflow_id}":{"get":{"summary":"Get Workflow","operationId":"get_workflow_api_workflows__workflow_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"workflow_id","in":"path","required":true,"schema":{"type":"string","title":"Workflow Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Workflow","operationId":"delete_workflow_api_workflows__workflow_id__delete","parameters":[{"name":"workflow_id","in":"path","required":true,"schema":{"type":"string","title":"Workflow Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/workflows/{workflow_id}/start":{"post":{"summary":"Start Workflow","description":"启动工作流实例：解析图 → 逐步执行 → 审批节点暂停。","operationId":"start_workflow_api_workflows__workflow_id__start_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"workflow_id","in":"path","required":true,"schema":{"type":"string","title":"Workflow Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowStartRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/workflow-instances":{"get":{"summary":"List Instances","operationId":"list_instances_api_workflow_instances_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]}},"/api/workflow-instances/{instance_id}":{"get":{"summary":"Get Instance","description":"实例详情（含步骤日志）。","operationId":"get_instance_api_workflow_instances__instance_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"instance_id","in":"path","required":true,"schema":{"type":"string","title":"Instance Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/workflow-instances/{instance_id}/approve":{"post":{"summary":"Approve Instance","description":"审批当前 human 节点：通过 → 继续执行；拒绝 → 终止流程。","operationId":"approve_instance_api_workflow_instances__instance_id__approve_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"instance_id","in":"path","required":true,"schema":{"type":"string","title":"Instance Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowApproveRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agent/run/{execution_id}":{"get":{"summary":"Get Execution","description":"查询 Agent 执行状态","operationId":"get_execution_api_agent_run__execution_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"execution_id","in":"path","required":true,"schema":{"type":"string","title":"Execution Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agent/run/{execution_id}/steps":{"get":{"summary":"Get Steps","description":"查询 Agent 执行步骤列表","operationId":"get_steps_api_agent_run__execution_id__steps_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"execution_id","in":"path","required":true,"schema":{"type":"string","title":"Execution Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/permissions/pending":{"get":{"summary":"List Pending Permissions","description":"获取待审批的权限请求列表\n\n- 普通用户：只能查看自己的待审批请求\n- admin：可查看全部，或通过 user_id 参数筛选","operationId":"list_pending_permissions_api_permissions_pending_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"user_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/permissions/{request_id}/respond":{"post":{"summary":"Respond Permission Endpoint","description":"响应审批请求\n\n- request_id: 审批请求ID\n- user_response: \"approved\" 或 \"rejected\"","operationId":"respond_permission_endpoint_api_permissions__request_id__respond_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","title":"Request Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PermissionRespondRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/permissions/logs":{"get":{"summary":"List Permission Logs","description":"获取审批历史日志（仅 admin）","operationId":"list_permission_logs_api_permissions_logs_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/security/identity/challenges":{"get":{"tags":["identity-risk"],"summary":"List My Challenges","description":"列出我待处理的核验请求。","operationId":"list_my_challenges_api_security_identity_challenges_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/security/identity/challenges/{challenge_id}":{"get":{"tags":["identity-risk"],"summary":"Get Challenge Detail","description":"查看单个核验请求（用于卡片刷新）。","operationId":"get_challenge_detail_api_security_identity_challenges__challenge_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"challenge_id","in":"path","required":true,"schema":{"type":"string","title":"Challenge Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/security/identity/challenges/{challenge_id}/verify":{"post":{"tags":["identity-risk"],"summary":"Verify Challenge","description":"提交双因子核验。全部通过后才返回 ``ok=True``。","operationId":"verify_challenge_api_security_identity_challenges__challenge_id__verify_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"challenge_id","in":"path","required":true,"schema":{"type":"string","title":"Challenge Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifyRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/security/identity/challenges/{challenge_id}/cancel":{"post":{"tags":["identity-risk"],"summary":"Cancel Challenge","description":"取消核验（放弃执行该危险操作）。","operationId":"cancel_challenge_api_security_identity_challenges__challenge_id__cancel_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"challenge_id","in":"path","required":true,"schema":{"type":"string","title":"Challenge Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/security/identity/assess":{"post":{"tags":["identity-risk"],"summary":"Assess Text","description":"排障用：对一段文本跑一次身份风险评估（不创建挑战、不执行）。","operationId":"assess_text_api_security_identity_assess_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AssessRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/security/identity/events":{"get":{"tags":["identity-risk"],"summary":"List Security Events","description":"安全事件流水（审计）：危险指令、冒用话术、MFA 发起/通过/失败。","operationId":"list_security_events_api_security_identity_events_get","parameters":[{"name":"user_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Id"}},{"name":"event_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Event Type"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/security/identity/events/summary":{"get":{"tags":["identity-risk"],"summary":"Security Event Summary","description":"近 24 小时安全事件按类型汇总（运营看板用）。","operationId":"security_event_summary_api_security_identity_events_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/kb":{"get":{"summary":"List Kbs","operationId":"list_kbs_api_kb_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBearer":[]}]},"post":{"summary":"Create Kb","operationId":"create_kb_api_kb_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KnowledgeBaseCreateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/api/kb/{kb_id}":{"delete":{"summary":"Delete Kb","operationId":"delete_kb_api_kb__kb_id__delete","parameters":[{"name":"kb_id","in":"path","required":true,"schema":{"type":"string","title":"Kb Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/kb/{kb_id}/documents":{"post":{"summary":"Upload Document","description":"上传文档（txt/md/csv/json 等纯文本；其他类型按 utf-8 尝试解码）。","operationId":"upload_document_api_kb__kb_id__documents_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"kb_id","in":"path","required":true,"schema":{"type":"string","title":"Kb Id"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_upload_document_api_kb__kb_id__documents_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"summary":"List Documents","operationId":"list_documents_api_kb__kb_id__documents_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"kb_id","in":"path","required":true,"schema":{"type":"string","title":"Kb Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/kb/{kb_id}/documents/text":{"post":{"summary":"Add Document Text","description":"直接以文本形式添加知识（不经过文件上传）。","operationId":"add_document_text_api_kb__kb_id__documents_text_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"kb_id","in":"path","required":true,"schema":{"type":"string","title":"Kb Id"}}],"requestBody":{"required":true,"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_add_document_text_api_kb__kb_id__documents_text_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/kb/{kb_id}/documents/{doc_id}":{"delete":{"summary":"Delete Document","operationId":"delete_document_api_kb__kb_id__documents__doc_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"kb_id","in":"path","required":true,"schema":{"type":"string","title":"Kb Id"}},{"name":"doc_id","in":"path","required":true,"schema":{"type":"string","title":"Doc Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/kb/{kb_id}/search":{"post":{"summary":"Search Kb","operationId":"search_kb_api_kb__kb_id__search_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"kb_id","in":"path","required":true,"schema":{"type":"string","title":"Kb Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/llm-models":{"get":{"tags":["admin-console"],"summary":"Admin List Llm Models","description":"管理后台 LLM 模型列表（等价于 GET /api/settings/models）。","operationId":"admin_list_llm_models_api_admin_llm_models_get","parameters":[{"name":"enabled_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Enabled Only"}},{"name":"model_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Type"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/settings/business-systems":{"get":{"tags":["admin-console"],"summary":"Admin List Business Systems","description":"管理后台业务系统连接列表（等价于 GET /api/settings/business-systems）。","operationId":"admin_list_business_systems_api_admin_settings_business_systems_get","parameters":[{"name":"type_filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type Filter"}},{"name":"enabled_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Enabled Only"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/sops":{"get":{"tags":["admin-console"],"summary":"Admin List Sops","description":"SOP 库列表（数据源：sop_templates）。","operationId":"admin_list_sops_api_admin_sops_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"category","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category"}},{"name":"keyword","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Keyword"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","default":1,"title":"Page"}},{"name":"page_size","in":"query","required":false,"schema":{"type":"integer","default":10,"title":"Page Size"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["admin-console"],"summary":"Admin Create Sop","description":"新建 SOP（数据源：sop_templates）。","operationId":"admin_create_sop_api_admin_sops_post","requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/sops/upload":{"post":{"tags":["admin-console"],"summary":"Admin Upload Sop","description":"带附件上传新建 SOP（附件仅记录文件名，正文由 description 承载）。","operationId":"admin_upload_sop_api_admin_sops_upload_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/admin/sops/{sop_id}":{"put":{"tags":["admin-console"],"summary":"Admin Update Sop","description":"更新 SOP（名称/分类/版本/描述/状态）。","operationId":"admin_update_sop_api_admin_sops__sop_id__put","parameters":[{"name":"sop_id","in":"path","required":true,"schema":{"type":"string","title":"Sop Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["admin-console"],"summary":"Admin Delete Sop","description":"删除 SOP 及其步骤定义。","operationId":"admin_delete_sop_api_admin_sops__sop_id__delete","parameters":[{"name":"sop_id","in":"path","required":true,"schema":{"type":"string","title":"Sop Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/sops/{sop_id}/download":{"get":{"tags":["admin-console"],"summary":"Admin Download Sop","description":"下载 SOP 文本（由模板元信息生成）。","operationId":"admin_download_sop_api_admin_sops__sop_id__download_get","parameters":[{"name":"sop_id","in":"path","required":true,"schema":{"type":"string","title":"Sop Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/corpus":{"get":{"tags":["admin-console"],"summary":"Admin List Corpus","description":"语料库列表（数据源：dialogue_corpus）。","operationId":"admin_list_corpus_api_admin_corpus_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"source","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source"}},{"name":"keyword","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Keyword"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","default":1,"title":"Page"}},{"name":"page_size","in":"query","required":false,"schema":{"type":"integer","default":10,"title":"Page Size"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["admin-console"],"summary":"Admin Create Corpus","description":"新增语料（数据源：dialogue_corpus）。","operationId":"admin_create_corpus_api_admin_corpus_post","requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/corpus/{corpus_id}":{"put":{"tags":["admin-console"],"summary":"Admin Update Corpus","description":"更新语料。","operationId":"admin_update_corpus_api_admin_corpus__corpus_id__put","parameters":[{"name":"corpus_id","in":"path","required":true,"schema":{"type":"string","title":"Corpus Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["admin-console"],"summary":"Admin Delete Corpus","description":"删除语料。","operationId":"admin_delete_corpus_api_admin_corpus__corpus_id__delete","parameters":[{"name":"corpus_id","in":"path","required":true,"schema":{"type":"string","title":"Corpus Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/training":{"get":{"tags":["admin-console"],"summary":"Admin List Training","description":"训练任务列表（数据源：training_jobs）。","operationId":"admin_list_training_api_admin_training_get","parameters":[{"name":"model_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Type"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["admin-console"],"summary":"Admin Create Training","description":"创建训练任务（登记为 pending，由训练器后续接管）。","operationId":"admin_create_training_api_admin_training_post","requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/training/{job_id}/stop":{"post":{"tags":["admin-console"],"summary":"Admin Stop Training","description":"停止训练任务。","operationId":"admin_stop_training_api_admin_training__job_id__stop_post","parameters":[{"name":"job_id","in":"path","required":true,"schema":{"type":"string","title":"Job Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/training/{job_id}/logs":{"get":{"tags":["admin-console"],"summary":"Admin Training Logs","description":"训练任务日志（由任务元信息汇总）。","operationId":"admin_training_logs_api_admin_training__job_id__logs_get","parameters":[{"name":"job_id","in":"path","required":true,"schema":{"type":"string","title":"Job Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/tasks/{task_id}/reassign":{"post":{"tags":["admin-console"],"summary":"Admin Reassign Task","description":"把任务改派给新的负责人，并写入一条时间线记录。","operationId":"admin_reassign_task_api_admin_tasks__task_id__reassign_post","parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"string","title":"Task Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/skills":{"get":{"tags":["admin-console"],"summary":"Admin List Skills","description":"技能列表（skills 表，含系统内置与用户自定义）。","operationId":"admin_list_skills_api_admin_skills_get","parameters":[{"name":"category","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["admin-console"],"summary":"Admin Create Skill","operationId":"admin_create_skill_api_admin_skills_post","requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/skills/{skill_id}":{"put":{"tags":["admin-console"],"summary":"Admin Update Skill","operationId":"admin_update_skill_api_admin_skills__skill_id__put","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["admin-console"],"summary":"Admin Delete Skill","operationId":"admin_delete_skill_api_admin_skills__skill_id__delete","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/skills/{skill_id}/toggle":{"post":{"tags":["admin-console"],"summary":"Admin Toggle Skill","description":"启用 / 停用技能。","operationId":"admin_toggle_skill_api_admin_skills__skill_id__toggle_post","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/mcp-servers":{"get":{"tags":["admin-console"],"summary":"Admin List Mcp Servers","operationId":"admin_list_mcp_servers_api_admin_mcp_servers_get","parameters":[{"name":"type_filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type Filter"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["admin-console"],"summary":"Admin Create Mcp Server","description":"管理后台新增 MCP 服务 → 落为**系统预置**（user_id=NULL）。\n\n历史缺陷：写成 `user_id=管理员ID`，于是该 MCP 变成\"管理员私有\"，用户端\n`_scope_where`（本人 OR user_id IS NULL）过滤后完全看不到 ——\n「后台配了、用户用不了」。系统设置有明确口径：后台配置 = 全局预置。","operationId":"admin_create_mcp_server_api_admin_mcp_servers_post","requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/mcp-servers/{mcp_id}":{"put":{"tags":["admin-console"],"summary":"Admin Update Mcp Server","operationId":"admin_update_mcp_server_api_admin_mcp_servers__mcp_id__put","parameters":[{"name":"mcp_id","in":"path","required":true,"schema":{"type":"string","title":"Mcp Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["admin-console"],"summary":"Admin Delete Mcp Server","operationId":"admin_delete_mcp_server_api_admin_mcp_servers__mcp_id__delete","parameters":[{"name":"mcp_id","in":"path","required":true,"schema":{"type":"string","title":"Mcp Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/mcp-servers/{mcp_id}/test":{"post":{"tags":["admin-console"],"summary":"Admin Test Mcp Server","description":"连通性测试（复用 settings_mgmt 的测试实现）。","operationId":"admin_test_mcp_server_api_admin_mcp_servers__mcp_id__test_post","parameters":[{"name":"mcp_id","in":"path","required":true,"schema":{"type":"string","title":"Mcp Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/business-systems":{"get":{"tags":["admin-console"],"summary":"Admin List Business Systems","operationId":"admin_list_business_systems_api_admin_business_systems_get","parameters":[{"name":"type_filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type Filter"}},{"name":"enabled_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Enabled Only"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["admin-console"],"summary":"Admin Create Business System","operationId":"admin_create_business_system_api_admin_business_systems_post","requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/business-systems/{sys_id}":{"put":{"tags":["admin-console"],"summary":"Admin Update Business System","operationId":"admin_update_business_system_api_admin_business_systems__sys_id__put","parameters":[{"name":"sys_id","in":"path","required":true,"schema":{"type":"string","title":"Sys Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["admin-console"],"summary":"Admin Delete Business System","operationId":"admin_delete_business_system_api_admin_business_systems__sys_id__delete","parameters":[{"name":"sys_id","in":"path","required":true,"schema":{"type":"string","title":"Sys Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/db-connections":{"get":{"tags":["admin-console"],"summary":"Admin List Db Connections","operationId":"admin_list_db_connections_api_admin_db_connections_get","parameters":[{"name":"type_filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type Filter"}},{"name":"enabled_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Enabled Only"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["admin-console"],"summary":"Admin Create Db Connection","operationId":"admin_create_db_connection_api_admin_db_connections_post","requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/db-connections/{conn_id}":{"put":{"tags":["admin-console"],"summary":"Admin Update Db Connection","operationId":"admin_update_db_connection_api_admin_db_connections__conn_id__put","parameters":[{"name":"conn_id","in":"path","required":true,"schema":{"type":"string","title":"Conn Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["admin-console"],"summary":"Admin Delete Db Connection","operationId":"admin_delete_db_connection_api_admin_db_connections__conn_id__delete","parameters":[{"name":"conn_id","in":"path","required":true,"schema":{"type":"string","title":"Conn Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/ssh-credentials":{"get":{"tags":["admin-console"],"summary":"Admin List Ssh Credentials","operationId":"admin_list_ssh_credentials_api_admin_ssh_credentials_get","parameters":[{"name":"enabled_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Enabled Only"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["admin-console"],"summary":"Admin Create Ssh Credential","operationId":"admin_create_ssh_credential_api_admin_ssh_credentials_post","requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/ssh-credentials/{cred_id}":{"put":{"tags":["admin-console"],"summary":"Admin Update Ssh Credential","operationId":"admin_update_ssh_credential_api_admin_ssh_credentials__cred_id__put","parameters":[{"name":"cred_id","in":"path","required":true,"schema":{"type":"string","title":"Cred Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["admin-console"],"summary":"Admin Delete Ssh Credential","operationId":"admin_delete_ssh_credential_api_admin_ssh_credentials__cred_id__delete","parameters":[{"name":"cred_id","in":"path","required":true,"schema":{"type":"string","title":"Cred Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/channels":{"get":{"tags":["admin-console"],"summary":"Admin List Channels","description":"管理员视角：返回**全部**渠道（含未开放），用于开通/停用/配凭证。","operationId":"admin_list_channels_api_admin_channels_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["admin-console"],"summary":"Admin Create Channel","operationId":"admin_create_channel_api_admin_channels_post","requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/channels/catalog":{"get":{"tags":["admin-console"],"summary":"Admin Channel Catalog","description":"渠道类型模板（新建渠道表单字段定义）。","operationId":"admin_channel_catalog_api_admin_channels_catalog_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/admin/channels/{channel_id}":{"put":{"tags":["admin-console"],"summary":"Admin Update Channel","operationId":"admin_update_channel_api_admin_channels__channel_id__put","parameters":[{"name":"channel_id","in":"path","required":true,"schema":{"type":"string","title":"Channel Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["admin-console"],"summary":"Admin Delete Channel","operationId":"admin_delete_channel_api_admin_channels__channel_id__delete","parameters":[{"name":"channel_id","in":"path","required":true,"schema":{"type":"string","title":"Channel Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/channels/{channel_id}/test":{"post":{"tags":["admin-console"],"summary":"Admin Test Channel","description":"真实连通性测试；带 `config` 时用表单临时值测（保存前先验）。","operationId":"admin_test_channel_api_admin_channels__channel_id__test_post","parameters":[{"name":"channel_id","in":"path","required":true,"schema":{"type":"string","title":"Channel Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/channel-bindings":{"get":{"tags":["admin-console"],"summary":"Admin List Channel Bindings","operationId":"admin_list_channel_bindings_api_admin_channel_bindings_get","parameters":[{"name":"channel","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Channel"}},{"name":"bound_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Bound Only"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["admin-console"],"summary":"Admin Create Channel Binding","operationId":"admin_create_channel_binding_api_admin_channel_bindings_post","requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/channel-bindings/{cb_id}":{"put":{"tags":["admin-console"],"summary":"Admin Update Channel Binding","operationId":"admin_update_channel_binding_api_admin_channel_bindings__cb_id__put","parameters":[{"name":"cb_id","in":"path","required":true,"schema":{"type":"string","title":"Cb Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["admin-console"],"summary":"Admin Delete Channel Binding","operationId":"admin_delete_channel_binding_api_admin_channel_bindings__cb_id__delete","parameters":[{"name":"cb_id","in":"path","required":true,"schema":{"type":"string","title":"Cb Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/device-protocols":{"get":{"tags":["admin-console"],"summary":"Admin List Device Protocols","operationId":"admin_list_device_protocols_api_admin_device_protocols_get","parameters":[{"name":"type_filter","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type Filter"}},{"name":"enabled_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Enabled Only"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["admin-console"],"summary":"Admin Create Device Protocol","operationId":"admin_create_device_protocol_api_admin_device_protocols_post","requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/device-protocols/{proto_id}":{"put":{"tags":["admin-console"],"summary":"Admin Update Device Protocol","operationId":"admin_update_device_protocol_api_admin_device_protocols__proto_id__put","parameters":[{"name":"proto_id","in":"path","required":true,"schema":{"type":"string","title":"Proto Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["admin-console"],"summary":"Admin Delete Device Protocol","operationId":"admin_delete_device_protocol_api_admin_device_protocols__proto_id__delete","parameters":[{"name":"proto_id","in":"path","required":true,"schema":{"type":"string","title":"Proto Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/field-mappings":{"get":{"tags":["admin-console"],"summary":"Admin List Field Mappings","operationId":"admin_list_field_mappings_api_admin_field_mappings_get","parameters":[{"name":"target_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target Type"}},{"name":"target_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target Id"}},{"name":"scope","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Scope"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["admin-console"],"summary":"Admin Create Field Mapping","operationId":"admin_create_field_mapping_api_admin_field_mappings_post","requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/field-mappings/{entry_id}":{"put":{"tags":["admin-console"],"summary":"Admin Update Field Mapping","operationId":"admin_update_field_mapping_api_admin_field_mappings__entry_id__put","parameters":[{"name":"entry_id","in":"path","required":true,"schema":{"type":"string","title":"Entry Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["admin-console"],"summary":"Admin Delete Field Mapping","operationId":"admin_delete_field_mapping_api_admin_field_mappings__entry_id__delete","parameters":[{"name":"entry_id","in":"path","required":true,"schema":{"type":"string","title":"Entry Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/interface-requests":{"get":{"tags":["admin-console"],"summary":"Admin List Interface Requests","operationId":"admin_list_interface_requests_api_admin_interface_requests_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/interface-requests/counts":{"get":{"tags":["admin-console"],"summary":"Admin Interface Request Counts","description":"各状态申请数 —— 侧栏待办角标用。","operationId":"admin_interface_request_counts_api_admin_interface_requests_counts_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/admin/interface-requests/{req_id}/approve":{"post":{"tags":["admin-console"],"summary":"Admin Approve Interface Request","description":"批准申请：连接真正落库后申请才变为 approved。\n\n`payload` 是管理员在审批时补齐的参数（典型是凭据：apiKey / password / 密钥），\n与申请人填的内容合并，管理员给的值优先。","operationId":"admin_approve_interface_request_api_admin_interface_requests__req_id__approve_post","parameters":[{"name":"req_id","in":"path","required":true,"schema":{"type":"string","title":"Req Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/interface-requests/{req_id}/reject":{"post":{"tags":["admin-console"],"summary":"Admin Reject Interface Request","operationId":"admin_reject_interface_request_api_admin_interface_requests__req_id__reject_post","parameters":[{"name":"req_id","in":"path","required":true,"schema":{"type":"string","title":"Req Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/prompts":{"get":{"tags":["admin-console"],"summary":"Admin List Prompts","operationId":"admin_list_prompts_api_admin_prompts_get","parameters":[{"name":"category","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category"}},{"name":"preset_only","in":"query","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Preset Only"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["admin-console"],"summary":"Admin Create Prompt","operationId":"admin_create_prompt_api_admin_prompts_post","requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/prompts/{tpl_id}":{"put":{"tags":["admin-console"],"summary":"Admin Update Prompt","operationId":"admin_update_prompt_api_admin_prompts__tpl_id__put","parameters":[{"name":"tpl_id","in":"path","required":true,"schema":{"type":"string","title":"Tpl Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["admin-console"],"summary":"Admin Delete Prompt","operationId":"admin_delete_prompt_api_admin_prompts__tpl_id__delete","parameters":[{"name":"tpl_id","in":"path","required":true,"schema":{"type":"string","title":"Tpl Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/market-sources":{"get":{"tags":["admin-console"],"summary":"Admin List Market Sources","operationId":"admin_list_market_sources_api_admin_market_sources_get","parameters":[{"name":"enabled_only","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Enabled Only"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["admin-console"],"summary":"Admin Create Market Source","operationId":"admin_create_market_source_api_admin_market_sources_post","requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/market-sources/{source_id}":{"put":{"tags":["admin-console"],"summary":"Admin Update Market Source","operationId":"admin_update_market_source_api_admin_market_sources__source_id__put","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["admin-console"],"summary":"Admin Delete Market Source","operationId":"admin_delete_market_source_api_admin_market_sources__source_id__delete","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/market-sources/{source_id}/test":{"post":{"tags":["admin-console"],"summary":"Admin Test Market Source","description":"真实探测市场源连通性（带 url 时用表单里尚未保存的值直接测）。","operationId":"admin_test_market_source_api_admin_market_sources__source_id__test_post","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/backups":{"get":{"tags":["admin-console"],"summary":"Admin List Backups","operationId":"admin_list_backups_api_admin_backups_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/migration-sources":{"get":{"tags":["admin-console"],"summary":"Admin List Migration Sources","operationId":"admin_list_migration_sources_api_admin_migration_sources_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/admin/skills/market":{"get":{"tags":["admin-console"],"summary":"Admin Skill Market","description":"技能市场搜索（复用 settings_mgmt.search_skill_market）。\n\n返回统一的 ``{\"data\": [...], \"total\", \"page\", \"source\"}``。","operationId":"admin_skill_market_api_admin_skills_market_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}},{"name":"source","in":"query","required":false,"schema":{"type":"string","default":"clawhub","title":"Source"}},{"name":"category","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"default":1,"title":"Page"}},{"name":"page_size","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Page Size"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/agents":{"get":{"tags":["admin-console"],"summary":"Admin List Agents","description":"智能体列表（含创建者 / 使用人数 / 最近使用），数据源：agents + chats + users。","operationId":"admin_list_agents_api_admin_agents_get","parameters":[{"name":"agent_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Type"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/agents/{agent_id}":{"get":{"tags":["admin-console"],"summary":"Admin Get Agent","description":"智能体详情：简介 / 系统提示词 / 绑定模型 / 技能与 MCP / 关联用户。","operationId":"admin_get_agent_api_admin_agents__agent_id__get","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/security/keywords/stats":{"get":{"tags":["admin-console"],"summary":"Admin Keyword Stats","description":"命中统计（规则数 / 启用数 / 累计命中 / 黑白名单分布 / 命中 TOP）。","operationId":"admin_keyword_stats_api_admin_security_keywords_stats_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/admin/security/keywords/import":{"post":{"tags":["admin-console"],"summary":"Admin Import Keywords","description":"批量导入（一行一条关键词）。","operationId":"admin_import_keywords_api_admin_security_keywords_import_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Payload","default":{}}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/security/keywords":{"get":{"tags":["admin-console"],"summary":"Admin List Keywords","description":"规则列表（可按黑/白名单、作用域、启用态、关键词过滤）。","operationId":"admin_list_keywords_api_admin_security_keywords_get","parameters":[{"name":"list_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"List Type"}},{"name":"scope","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Scope"}},{"name":"enabled","in":"query","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Enabled"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["admin-console"],"summary":"Admin Create Keyword","description":"新增规则（全局预置：user_id=NULL，对所有对话生效）。","operationId":"admin_create_keyword_api_admin_security_keywords_post","requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/security/keywords/{rule_id}":{"get":{"tags":["admin-console"],"summary":"Admin Get Keyword","operationId":"admin_get_keyword_api_admin_security_keywords__rule_id__get","parameters":[{"name":"rule_id","in":"path","required":true,"schema":{"type":"integer","title":"Rule Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["admin-console"],"summary":"Admin Update Keyword","operationId":"admin_update_keyword_api_admin_security_keywords__rule_id__put","parameters":[{"name":"rule_id","in":"path","required":true,"schema":{"type":"integer","title":"Rule Id"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"default":{},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["admin-console"],"summary":"Admin Delete Keyword","operationId":"admin_delete_keyword_api_admin_security_keywords__rule_id__delete","parameters":[{"name":"rule_id","in":"path","required":true,"schema":{"type":"integer","title":"Rule Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/dashboard/overview":{"get":{"tags":["admin-dashboard"],"summary":"Dashboard Overview","description":"顶部统计卡片 + 指标口径说明。","operationId":"dashboard_overview_api_admin_dashboard_overview_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/admin/dashboard/usage":{"get":{"tags":["admin-dashboard"],"summary":"Dashboard Usage","description":"使用量统计（多维度）。","operationId":"dashboard_usage_api_admin_dashboard_usage_get","parameters":[{"name":"period","in":"query","required":false,"schema":{"type":"string","description":"统计周期：7d | month | 90d","default":"month","title":"Period"},"description":"统计周期：7d | month | 90d"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/dashboard/tasks":{"get":{"tags":["admin-dashboard"],"summary":"Dashboard Tasks","description":"任务时效统计：执行中 / 已完成 / 超时。","operationId":"dashboard_tasks_api_admin_dashboard_tasks_get","parameters":[{"name":"period","in":"query","required":false,"schema":{"type":"string","description":"统计周期：7d | month | 90d","default":"month","title":"Period"},"description":"统计周期：7d | month | 90d"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/dashboard/timeout-rules":{"get":{"tags":["admin-dashboard"],"summary":"List Timeout Rules","description":"超时阈值规则列表 + 可选任务类型（供下拉）。","operationId":"list_timeout_rules_api_admin_dashboard_timeout_rules_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"tags":["admin-dashboard"],"summary":"Upsert Timeout Rule","description":"新增或更新一条超时阈值规则（按 task_type 幂等）。","operationId":"upsert_timeout_rule_api_admin_dashboard_timeout_rules_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TimeoutRulePayload"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/dashboard/timeout-rules/{task_type}":{"delete":{"tags":["admin-dashboard"],"summary":"Delete Timeout Rule","operationId":"delete_timeout_rule_api_admin_dashboard_timeout_rules__task_type__delete","parameters":[{"name":"task_type","in":"path","required":true,"schema":{"type":"string","title":"Task Type"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/dashboard/data-quality":{"get":{"tags":["admin-dashboard"],"summary":"Data Quality","description":"用量数据的真实/估算构成，供前端如实标注。","operationId":"data_quality_api_admin_dashboard_data_quality_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/":{"get":{"summary":"Root","operationId":"root__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/health":{"get":{"summary":"Health Check","operationId":"health_check_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}}},"components":{"schemas":{"AcceptAgreementRequest":{"properties":{"accepted":{"type":"boolean","title":"Accepted"}},"type":"object","required":["accepted"],"title":"AcceptAgreementRequest"},"AddFileSnapshotRequest":{"properties":{"file_name":{"type":"string","title":"File Name"},"operation":{"type":"string","title":"Operation"},"file_type":{"type":"string","title":"File Type","default":""},"size":{"type":"string","title":"Size","default":""},"detail":{"type":"string","title":"Detail","default":""}},"type":"object","required":["file_name","operation"],"title":"AddFileSnapshotRequest"},"AddMemoryRequest":{"properties":{"entry":{"type":"string","title":"Entry"},"memory_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Memory Type","default":"episodic"}},"type":"object","required":["entry"],"title":"AddMemoryRequest"},"AddTabooRequest":{"properties":{"rule":{"type":"string","title":"Rule"},"deletable":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Deletable"}},"type":"object","required":["rule"],"title":"AddTabooRequest"},"AdminTaskCreateRequest":{"properties":{"title":{"type":"string","title":"Title"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"priority":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Priority","default":"medium"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status","default":"pending"},"progress":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Progress","default":0},"assigned_to":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Assigned To"},"deadline":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Deadline"}},"type":"object","required":["title"],"title":"AdminTaskCreateRequest"},"AdminTaskUpdateRequest":{"properties":{"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"priority":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Priority"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"progress":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Progress"},"assigned_to":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Assigned To"},"deadline":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Deadline"}},"type":"object","title":"AdminTaskUpdateRequest"},"AssessRequest":{"properties":{"text":{"type":"string","title":"Text"},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},"type":"object","required":["text"],"title":"AssessRequest"},"BindPhoneRequest":{"properties":{"phone":{"type":"string","title":"Phone"},"code":{"type":"string","title":"Code"}},"type":"object","required":["phone","code"],"title":"BindPhoneRequest"},"Body_add_document_text_api_kb__kb_id__documents_text_post":{"properties":{"filename":{"type":"string","title":"Filename"},"content":{"type":"string","title":"Content"}},"type":"object","required":["filename","content"],"title":"Body_add_document_text_api_kb__kb_id__documents_text_post"},"Body_import_field_mapping_file_api_settings_field_mappings_import_file_post":{"properties":{"file":{"type":"string","format":"binary","title":"File"}},"type":"object","required":["file"],"title":"Body_import_field_mapping_file_api_settings_field_mappings_import_file_post"},"Body_upload_document_api_kb__kb_id__documents_post":{"properties":{"file":{"type":"string","format":"binary","title":"File"}},"type":"object","required":["file"],"title":"Body_upload_document_api_kb__kb_id__documents_post"},"Body_upload_ssh_key_api_settings_ssh_credentials__cred_id__upload_key_post":{"properties":{"file":{"type":"string","format":"binary","title":"File"}},"type":"object","required":["file"],"title":"Body_upload_ssh_key_api_settings_ssh_credentials__cred_id__upload_key_post"},"ChangePasswordRequest":{"properties":{"old_password":{"type":"string","title":"Old Password"},"new_password":{"type":"string","title":"New Password"},"code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Code"}},"type":"object","required":["old_password","new_password"],"title":"ChangePasswordRequest"},"ChatRequest":{"properties":{"messages":{"items":{"additionalProperties":{"type":"string"},"type":"object"},"type":"array","title":"Messages"},"temperature":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Temperature","default":0.7},"max_tokens":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Tokens","default":2000}},"type":"object","required":["messages"],"title":"ChatRequest"},"CompensationRuleRequest":{"properties":{"source_system":{"type":"string","title":"Source System"},"source_action":{"type":"string","title":"Source Action"},"compensation_system":{"type":"string","title":"Compensation System"},"compensation_action":{"type":"string","title":"Compensation Action"},"param_mapping":{"additionalProperties":{"type":"string"},"type":"object","title":"Param Mapping"},"priority":{"type":"integer","title":"Priority","default":0},"remark":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Remark"}},"type":"object","required":["source_system","source_action","compensation_system","compensation_action","param_mapping"],"title":"CompensationRuleRequest"},"ConnectionCreateRequest":{"properties":{"system_name":{"type":"string","title":"System Name"},"system_code":{"type":"string","title":"System Code"},"system_type":{"type":"string","title":"System Type"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Version"},"base_url":{"type":"string","title":"Base Url"},"auth_type":{"type":"string","title":"Auth Type","default":"apikey"},"auth_config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Auth Config"},"remark":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Remark"}},"type":"object","required":["system_name","system_code","system_type","base_url"],"title":"ConnectionCreateRequest"},"ConnectorInvokeRequest":{"properties":{"system_code":{"type":"string","title":"System Code","default":"seeyon_oa"},"endpoint":{"type":"string","title":"Endpoint"},"method":{"type":"string","title":"Method","default":"GET"},"params":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Params"}},"type":"object","required":["endpoint"],"title":"ConnectorInvokeRequest"},"CreateAgentRequest":{"properties":{"name":{"type":"string","title":"Name"},"avatar":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Avatar"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"agent_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Type","default":"conversation"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status","default":"active"},"model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model","default":"gpt-4o-mini"},"temperature":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Temperature","default":"0.7"},"max_tokens":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Max Tokens","default":"2000"},"top_p":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Top P","default":"0.9"},"system_prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"System Prompt"},"conversation_starters":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Conversation Starters"},"enabled_tools":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Enabled Tools"},"skills":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Skills"},"config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Config"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata"}},"type":"object","required":["name"],"title":"CreateAgentRequest"},"CreateSkillRequest":{"properties":{"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"category":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category","default":"custom"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Version","default":"1.0"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status","default":"active"},"config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Config"}},"type":"object","required":["name"],"title":"CreateSkillRequest"},"CreateTaskRequest":{"properties":{"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status","default":"pending"},"priority":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Priority","default":"medium"},"source_system":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source System","default":""},"target_system":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target System"},"form_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Form Id"},"process_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Process Name"},"current_step":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Current Step"},"total_steps":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Total Steps"},"current_approver":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Current Approver"},"flow_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Flow Status"},"relation":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Relation"},"relation_ref":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Relation Ref"},"chat_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Chat Id"},"user_request":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Request"},"progress_percent":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Progress Percent"}},"type":"object","title":"CreateTaskRequest"},"CreateUserRequest":{"properties":{"username":{"type":"string","title":"Username"},"password":{"type":"string","title":"Password"},"display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Display Name"},"email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email"},"phone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Phone"},"role":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Role","default":"operator"},"department":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Department"},"org_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Org Id"},"avatar":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Avatar"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status","default":"active"},"data_scope":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Data Scope"}},"type":"object","required":["username","password"],"title":"CreateUserRequest"},"DefinitionCreate":{"properties":{"name":{"type":"string","maxLength":128,"minLength":1,"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"},"bpmn_xml":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Bpmn Xml"},"tags":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tags"}},"type":"object","required":["name"],"title":"DefinitionCreate"},"DefinitionUpdate":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"bpmn_xml":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Bpmn Xml"},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"},"tags":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tags"}},"type":"object","title":"DefinitionUpdate"},"DialogueCreateRequest":{"properties":{"user_question":{"type":"string","title":"User Question"},"assistant_response":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Assistant Response"},"user_intent":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Intent"},"intent_confidence":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Intent Confidence"},"domain":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Domain"},"context":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Context"},"source_system":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source System"},"source_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source Url"}},"type":"object","required":["user_question"],"title":"DialogueCreateRequest"},"ExecuteRequest":{"properties":{"template_id":{"type":"string","title":"Template Id"},"params":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Params"}},"type":"object","required":["template_id"],"title":"ExecuteRequest"},"FeaturePermissionBatchUpdate":{"properties":{"permissions":{"items":{"$ref":"#/components/schemas/FeaturePermissionUpdate"},"type":"array","title":"Permissions"}},"type":"object","required":["permissions"],"title":"FeaturePermissionBatchUpdate"},"FeaturePermissionUpdate":{"properties":{"code":{"type":"string","title":"Code"},"granted":{"type":"boolean","title":"Granted"}},"type":"object","required":["code","granted"],"title":"FeaturePermissionUpdate"},"FeedbackRequest":{"properties":{"feedback_type":{"type":"string","title":"Feedback Type"},"feedback_comment":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Feedback Comment"}},"type":"object","required":["feedback_type"],"title":"FeedbackRequest"},"FlowEdge":{"properties":{"source":{"type":"string","title":"Source","description":"源节点ID"},"target":{"type":"string","title":"Target","description":"目标节点ID"},"label":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Label","description":"连线标签"},"condition":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Condition","description":"分支条件表达式"}},"type":"object","required":["source","target"],"title":"FlowEdge","description":"流程图连线"},"FlowNode":{"properties":{"id":{"type":"string","title":"Id","description":"节点唯一标识"},"label":{"type":"string","title":"Label","description":"节点显示文本"},"type":{"type":"string","title":"Type","description":"节点类型: start|process|decision|end|ai|human","default":"process"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description","description":"节点详细说明"},"status":{"type":"string","title":"Status","description":"节点状态: pending|running|completed|error","default":"pending"},"position":{"anyOf":[{"additionalProperties":{"type":"integer"},"type":"object"},{"type":"null"}],"title":"Position","description":"布局位置 {x, y}"},"config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Config","description":"节点配置参数"}},"type":"object","required":["id","label"],"title":"FlowNode","description":"流程图节点"},"GenerateRequest":{"properties":{"description":{"type":"string","minLength":5,"title":"Description"},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"},"model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model"}},"type":"object","required":["description"],"title":"GenerateRequest"},"GlobalTemplateRequest":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description","default":""},"icon":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Icon","default":"📋"},"steps":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Steps"},"graph":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Graph"}},"type":"object","title":"GlobalTemplateRequest"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"InstallMcpRequest":{"properties":{"market_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Market Id"},"source":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source"},"name":{"type":"string","title":"Name"},"server":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Server","default":""},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description","default":""}},"type":"object","required":["name"],"title":"InstallMcpRequest"},"InstallSkillRequest":{"properties":{"market_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Market Id"},"source":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source"},"name":{"type":"string","title":"Name"},"icon":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Icon","default":"🛒"},"category":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category","default":"市场"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description","default":""},"content":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Content","default":""},"auto_load":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Auto Load","default":true}},"type":"object","required":["name"],"title":"InstallSkillRequest"},"InstallWorkflowRequest":{"properties":{"template_id":{"type":"string","title":"Template Id"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Origin"}},"type":"object","required":["template_id"],"title":"InstallWorkflowRequest"},"InstanceCreate":{"properties":{"definition_id":{"type":"string","title":"Definition Id"},"business_key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Business Key"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"variables":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Variables"}},"type":"object","required":["definition_id"],"title":"InstanceCreate"},"InterfaceItemRequest":{"properties":{"id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Id"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Type"},"enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Enabled","default":true},"endpoint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Endpoint"},"apiKey":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Apikey"},"authType":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authtype"},"host":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Host"},"port":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Port"},"username":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Username"},"password":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Password"},"database":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Database"},"db_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Db Type"},"private_key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Private Key"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Protocol"},"device_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Device Id"},"channel":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Channel"},"source":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source","default":"user"},"system_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"System Id"},"extra":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Extra"},"field_mapping":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Field Mapping"},"table_mapping":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Table Mapping"}},"type":"object","title":"InterfaceItemRequest"},"InvokeRequest":{"properties":{"message":{"type":"string","title":"Message"},"context":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Context"},"model_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Id"}},"type":"object","required":["message"],"title":"InvokeRequest"},"KnowledgeBaseCreateRequest":{"properties":{"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"}},"type":"object","required":["name"],"title":"KnowledgeBaseCreateRequest"},"LoginRequest":{"properties":{"username":{"type":"string","title":"Username"},"password":{"type":"string","title":"Password"}},"type":"object","required":["username","password"],"title":"LoginRequest"},"ModelAccessRequest":{"properties":{"model_id":{"type":"string","title":"Model Id"},"allowed":{"type":"boolean","title":"Allowed"}},"type":"object","required":["model_id","allowed"],"title":"ModelAccessRequest"},"ModelCreateRequest":{"properties":{"name":{"type":"string","title":"Name"},"model_type":{"type":"string","title":"Model Type"},"model_version":{"type":"string","title":"Model Version"},"api_key":{"type":"string","title":"Api Key"},"base_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Base Url"},"context_window":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Context Window","default":4096},"temperature":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Temperature","default":0.7},"max_tokens":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Tokens","default":4096},"top_p":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Top P","default":1.0},"enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Enabled","default":true},"is_default":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Default","default":false},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"icon":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Icon","default":"🤖"}},"type":"object","required":["name","model_type","model_version","api_key"],"title":"ModelCreateRequest"},"ModelUpdateRequest":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"model_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Type"},"model_version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model Version"},"api_key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api Key"},"base_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Base Url"},"context_window":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Context Window"},"temperature":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Temperature"},"max_tokens":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Tokens"},"top_p":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Top P"},"enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Enabled"},"is_default":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Default"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"icon":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Icon"}},"type":"object","title":"ModelUpdateRequest"},"ModelVersionRequest":{"properties":{"model_name":{"type":"string","title":"Model Name"},"base_model":{"type":"string","title":"Base Model"},"version":{"type":"string","title":"Version"},"status":{"type":"string","title":"Status","default":"staging"},"metrics":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metrics"},"accuracy":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Accuracy"},"f1_score":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"F1 Score"}},"type":"object","required":["model_name","base_model","version"],"title":"ModelVersionRequest"},"OaFlowCallbackRequest":{"properties":{"event":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Event"},"form_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Form Id"},"affair_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Affair Id"},"template_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Template Name"},"process_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Process Name"},"applicant_oa_username":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Applicant Oa Username"},"approver_oa_username":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Approver Oa Username"},"approver_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Approver Name"},"current_step":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Current Step"},"total_steps":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Total Steps"},"form_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Form Status"},"remark":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Remark"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"content":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Content"}},"type":"object","title":"OaFlowCallbackRequest"},"OaTodoSyncRequest":{"properties":{"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},"type":"object","title":"OaTodoSyncRequest"},"OperationRequest":{"properties":{"task_id":{"type":"string","title":"Task Id"},"target_system":{"type":"string","title":"Target System"},"target_action":{"type":"string","title":"Target Action"},"request_payload":{"additionalProperties":true,"type":"object","title":"Request Payload"}},"type":"object","required":["task_id","target_system","target_action","request_payload"],"title":"OperationRequest"},"OptimizeRequest":{"properties":{"kind":{"type":"string","title":"Kind","default":"text"},"content":{"type":"string","title":"Content"},"instruction":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Instruction","default":""},"context":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Context"}},"type":"object","required":["content"],"title":"OptimizeRequest"},"OptimizeResponse":{"properties":{"text":{"type":"string","title":"Text"},"kind":{"type":"string","title":"Kind"},"model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model"}},"type":"object","required":["text","kind"],"title":"OptimizeResponse"},"PermissionRespondRequest":{"properties":{"user_response":{"type":"string","title":"User Response"}},"type":"object","required":["user_response"],"title":"PermissionRespondRequest","description":"审批响应请求体"},"RAGChatRequest":{"properties":{"query":{"type":"string","title":"Query"},"temperature":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Temperature","default":0.7}},"type":"object","required":["query"],"title":"RAGChatRequest"},"RefreshTokenRequest":{"properties":{"refresh_token":{"type":"string","title":"Refresh Token"}},"type":"object","required":["refresh_token"],"title":"RefreshTokenRequest"},"RegisterRequest":{"properties":{"username":{"type":"string","title":"Username"},"password":{"type":"string","title":"Password"},"email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email"}},"type":"object","required":["username","password"],"title":"RegisterRequest"},"ResetPasswordRequest":{"properties":{"new_password":{"type":"string","title":"New Password"}},"type":"object","required":["new_password"],"title":"ResetPasswordRequest"},"RoleCreateRequest":{"properties":{"code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Code"},"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"admin":{"type":"boolean","title":"Admin","default":false},"copy_from":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Copy From"},"order_index":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Order Index"}},"type":"object","required":["name"],"title":"RoleCreateRequest"},"RoleUpdateRequest":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"admin":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Admin"},"order_index":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Order Index"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},"type":"object","title":"RoleUpdateRequest"},"RunScriptRequest":{"properties":{"input":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Input"}},"type":"object","title":"RunScriptRequest"},"SOPInstanceRequest":{"properties":{"template_id":{"type":"string","title":"Template Id"},"input_data":{"additionalProperties":true,"type":"object","title":"Input Data"},"task_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Task Id"}},"type":"object","required":["template_id","input_data"],"title":"SOPInstanceRequest"},"SOPTemplateCreateRequest":{"properties":{"template_name":{"type":"string","title":"Template Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"version":{"type":"string","title":"Version","default":"1.0"},"business_type":{"type":"string","title":"Business Type","default":"general"},"status":{"type":"string","title":"Status","default":"draft"}},"type":"object","required":["template_name"],"title":"SOPTemplateCreateRequest"},"SaveScriptRequest":{"properties":{"name":{"type":"string","title":"Name"},"prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Prompt","default":""},"language":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Language","default":"python"},"code":{"type":"string","title":"Code"}},"type":"object","required":["name","code"],"title":"SaveScriptRequest"},"SaveSkillRequest":{"properties":{"name":{"type":"string","title":"Name"},"icon":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Icon","default":"🧩"},"category":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category","default":""},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description","default":""},"content":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Content","default":""},"enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Enabled","default":true},"auto_load":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Auto Load","default":true},"source":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source","default":"user"},"system_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"System Id"}},"type":"object","required":["name"],"title":"SaveSkillRequest","description":"新增技能（手写 / 从服务器 / 从资源库）。"},"SearchRequest":{"properties":{"query":{"type":"string","title":"Query"},"top_k":{"type":"integer","title":"Top K","default":5}},"type":"object","required":["query"],"title":"SearchRequest"},"SendVerifyCodeRequest":{"properties":{"scene":{"type":"string","title":"Scene","default":"change_password"},"phone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Phone"}},"type":"object","title":"SendVerifyCodeRequest","description":"请求下发验证码。\n\n* ``scene=change_password``：发给当前用户**已绑定**的手机号，忽略 ``phone``\n* ``scene=bind_phone``：发给 ``phone`` 指定的号码（用于首次绑定/换绑）"},"SignalCreateRequest":{"properties":{"signal_type":{"type":"string","title":"Signal Type"},"content":{"type":"string","title":"Content"},"domain":{"type":"string","title":"Domain","default":"general"},"payload":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Payload"},"agent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Id"}},"type":"object","required":["signal_type","content"],"title":"SignalCreateRequest","description":"手工补录信号（管理后台排障 / 测试用）。"},"SyncMcpRequest":{"properties":{"servers":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Servers"}},"type":"object","required":["servers"],"title":"SyncMcpRequest"},"SyncPermissionsRequest":{"properties":{"user_ids":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"User Ids"},"systems":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Systems"},"sync_all":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Sync All","default":false}},"type":"object","title":"SyncPermissionsRequest"},"SyncSkillsRequest":{"properties":{"skills":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Skills"}},"type":"object","required":["skills"],"title":"SyncSkillsRequest"},"SystemPermissionBatchUpdate":{"properties":{"permissions":{"items":{"$ref":"#/components/schemas/SystemPermissionUpdate"},"type":"array","title":"Permissions"}},"type":"object","required":["permissions"],"title":"SystemPermissionBatchUpdate"},"SystemPermissionCreate":{"properties":{"code":{"type":"string","title":"Code"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"group":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Group"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"default_granted":{"type":"boolean","title":"Default Granted","default":false}},"type":"object","required":["code"],"title":"SystemPermissionCreate"},"SystemPermissionSyncRequest":{"properties":{"user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Id"},"system_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"System Code"}},"type":"object","title":"SystemPermissionSyncRequest"},"SystemPermissionUpdate":{"properties":{"code":{"type":"string","title":"Code"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"granted":{"type":"boolean","title":"Granted"}},"type":"object","required":["code","granted"],"title":"SystemPermissionUpdate"},"TaskCompleteRequest":{"properties":{"data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Data"},"comment":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Comment"}},"type":"object","title":"TaskCompleteRequest"},"TaskCreateRequest":{"properties":{"source_system":{"type":"string","title":"Source System"},"source_task_id":{"type":"string","title":"Source Task Id"},"task_type":{"type":"string","title":"Task Type"},"task_name":{"type":"string","title":"Task Name"},"task_description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Task Description"},"priority":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Priority","default":"medium"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status","default":"pending"},"planned_start_date":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"title":"Planned Start Date"},"planned_end_date":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"title":"Planned End Date"},"creator_user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Creator User Id"},"creator_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Creator Name"},"progress_percent":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Progress Percent","default":0},"current_deadline":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"title":"Current Deadline"},"current_step":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Current Step"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata"},"tags":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tags"}},"type":"object","required":["source_system","source_task_id","task_type","task_name"],"title":"TaskCreateRequest"},"TaskUpdateRequest":{"properties":{"task_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Task Name"},"task_description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Task Description"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"priority":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Priority"},"assignee_user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Assignee User Id"},"assignee_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Assignee Name"},"progress_percent":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Progress Percent"},"current_deadline":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"title":"Current Deadline"},"current_step":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Current Step"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata"}},"type":"object","title":"TaskUpdateRequest"},"TimeoutRulePayload":{"properties":{"task_type":{"type":"string","title":"Task Type","description":"任务类型，'*' 表示系统默认"},"display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Display Name"},"source":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source","description":"local | third_party"},"threshold_hours":{"anyOf":[{"type":"integer","maximum":8760.0,"minimum":1.0},{"type":"null"}],"title":"Threshold Hours"},"severity":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Severity","description":"info | warning | critical"},"is_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Enabled"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"}},"type":"object","required":["task_type"],"title":"TimeoutRulePayload"},"ToolExecuteRequest":{"properties":{"tool_name":{"type":"string","title":"Tool Name","description":"工具名称"},"params":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Params","description":"工具参数"}},"type":"object","required":["tool_name"],"title":"ToolExecuteRequest"},"ToolExecuteResponse":{"properties":{"success":{"type":"boolean","title":"Success","description":"执行是否成功"},"result":{"title":"Result","description":"执行结果"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error","description":"错误信息"},"tool_name":{"type":"string","title":"Tool Name","description":"工具名称"}},"type":"object","required":["success","tool_name"],"title":"ToolExecuteResponse"},"TrainingRequest":{"properties":{"job_name":{"type":"string","title":"Job Name"},"model_name":{"type":"string","title":"Model Name"},"base_model":{"type":"string","title":"Base Model","default":"lmsys/vicuna-7b-v1.5"},"job_type":{"type":"string","title":"Job Type","default":"fine_tune"},"data_source":{"additionalProperties":true,"type":"object","title":"Data Source"},"training_config":{"additionalProperties":true,"type":"object","title":"Training Config"}},"type":"object","required":["job_name","model_name","data_source","training_config"],"title":"TrainingRequest"},"TransactionRequest":{"properties":{"task_id":{"type":"string","title":"Task Id"},"operations":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Operations"}},"type":"object","required":["task_id","operations"],"title":"TransactionRequest"},"UpdateAgentRequest":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"avatar":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Avatar"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"agent_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Type"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model"},"temperature":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Temperature"},"max_tokens":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Max Tokens"},"top_p":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Top P"},"system_prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"System Prompt"},"conversation_starters":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Conversation Starters"},"enabled_tools":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Enabled Tools"},"skills":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Skills"},"config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Config"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata"}},"type":"object","title":"UpdateAgentRequest"},"UpdateContentRequest":{"properties":{"content":{"type":"string","title":"Content"}},"type":"object","required":["content"],"title":"UpdateContentRequest","description":"WO-006: 用于编辑记忆/日志全文内容"},"UpdateExpertRequest":{"properties":{"profile":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Profile"},"skills":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Skills"},"workflows":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Workflows"},"interfaces":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Interfaces"}},"type":"object","title":"UpdateExpertRequest"},"UpdateFileSnapshotRequest":{"properties":{"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Name"},"operation":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Operation"},"file_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Type"},"size":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Size"},"detail":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Detail"}},"type":"object","title":"UpdateFileSnapshotRequest","description":"WO-006: 用于编辑文件快照"},"UpdateProfileRequest":{"properties":{"display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Display Name"},"avatar":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Avatar"},"email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email"},"phone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Phone"}},"type":"object","title":"UpdateProfileRequest","description":"本人可自助修改的资料字段。\n\n只开放「姓名」与「头像」。``phone`` / ``email`` 仍保留在模型里，是为了在\n收到时**明确报错**（而不是被 pydantic 静默丢弃，让用户以为改成功了）：\n手机号必须走 ``POST /user/phone`` 的验证码链路，邮箱只由管理员维护。"},"UpdateScriptRequest":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Prompt"},"language":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Language"},"code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Code"}},"type":"object","title":"UpdateScriptRequest"},"UpdateSettingRequest":{"properties":{"value":{"title":"Value"}},"type":"object","required":["value"],"title":"UpdateSettingRequest"},"UpdateTaskRequest":{"properties":{"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"priority":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Priority"},"progress_percent":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Progress Percent"},"target_system":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target System"},"form_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Form Id"},"process_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Process Name"},"current_step":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Current Step"},"total_steps":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Total Steps"},"current_approver":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Current Approver"},"flow_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Flow Status"},"relation":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Relation"},"relation_ref":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Relation Ref"},"completed_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Completed At"}},"type":"object","title":"UpdateTaskRequest"},"UpdateUserRequest":{"properties":{"display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Display Name"},"email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email"},"phone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Phone"},"role":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Role"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"avatar":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Avatar"},"department":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Department"},"org_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Org Id"},"data_scope":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Data Scope"}},"type":"object","title":"UpdateUserRequest"},"UserModelAccessRequest":{"properties":{"model_ids":{"items":{"type":"string"},"type":"array","title":"Model Ids"},"allowed":{"type":"boolean","title":"Allowed"}},"type":"object","required":["model_ids","allowed"],"title":"UserModelAccessRequest"},"UserPermissionsRequest":{"properties":{"permissions":{"items":{"type":"string"},"type":"array","title":"Permissions"},"model_access":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Model Access"}},"type":"object","required":["permissions"],"title":"UserPermissionsRequest"},"ValidateRequest":{"properties":{"bpmn_xml":{"type":"string","title":"Bpmn Xml"}},"type":"object","required":["bpmn_xml"],"title":"ValidateRequest"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"VerifyCodeTestRequest":{"properties":{"phone":{"type":"string","title":"Phone"}},"type":"object","required":["phone"],"title":"VerifyCodeTestRequest"},"VerifyRequest":{"properties":{"username":{"type":"string","title":"Username","default":""},"password":{"type":"string","title":"Password","default":""},"code":{"type":"string","title":"Code","default":""}},"type":"object","title":"VerifyRequest","description":"双因子核验：账号密码 + 手机验证码。\n\n支持分步提交：只给账号密码时返回 ``next_factor=sms``；\n密码因子已通过后再提交验证码即可（不必重复输入密码）。"},"WebhookRegisterRequest":{"properties":{"name":{"type":"string","title":"Name"},"url":{"type":"string","title":"Url"},"events":{"items":{"type":"string"},"type":"array","title":"Events"},"secret":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Secret"},"status":{"type":"string","title":"Status","default":"active"}},"type":"object","required":["name","url","events"],"title":"WebhookRegisterRequest"},"WebhookUpdateRequest":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url"},"events":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Events"},"secret":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Secret"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},"type":"object","title":"WebhookUpdateRequest"},"WorkflowApproveRequest":{"properties":{"approved":{"type":"boolean","title":"Approved"},"comment":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Comment"}},"type":"object","required":["approved"],"title":"WorkflowApproveRequest"},"WorkflowGenerateRequest":{"properties":{"description":{"type":"string","minLength":10,"title":"Description","description":"工作流文字描述"},"model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model","description":"指定LLM模型"}},"type":"object","required":["description"],"title":"WorkflowGenerateRequest","description":"生成流程图请求"},"WorkflowGenerateResponse":{"properties":{"graph":{"$ref":"#/components/schemas/WorkflowGraph"},"raw_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Raw Text","description":"LLM原始输出文本"},"status":{"type":"string","title":"Status","default":"success"},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message"}},"type":"object","required":["graph"],"title":"WorkflowGenerateResponse","description":"生成流程图响应"},"WorkflowGraph":{"properties":{"nodes":{"items":{"$ref":"#/components/schemas/FlowNode"},"type":"array","title":"Nodes"},"edges":{"items":{"$ref":"#/components/schemas/FlowEdge"},"type":"array","title":"Edges"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title","description":"流程图标题"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description","description":"流程图描述"}},"type":"object","title":"WorkflowGraph","description":"完整流程图"},"WorkflowOptimizeRequest":{"properties":{"current_graph":{"$ref":"#/components/schemas/WorkflowGraph","description":"当前流程图"},"feedback":{"type":"string","minLength":5,"title":"Feedback","description":"用户优化建议/反馈"},"model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model","description":"指定LLM模型"}},"type":"object","required":["current_graph","feedback"],"title":"WorkflowOptimizeRequest","description":"优化流程图请求"},"WorkflowRequest":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description","default":""},"icon":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Icon","default":"📋"},"steps":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Steps"},"graph":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Graph"},"active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Active","default":false},"scope":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Scope"},"source":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source","default":"user"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Origin"},"system_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"System Id"}},"type":"object","title":"WorkflowRequest"},"WorkflowSaveRequest":{"properties":{"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"graph":{"additionalProperties":true,"type":"object","title":"Graph"},"status":{"type":"string","title":"Status","default":"published"}},"type":"object","required":["name","graph"],"title":"WorkflowSaveRequest"},"WorkflowStartRequest":{"properties":{"params":{"additionalProperties":true,"type":"object","title":"Params","default":{}}},"type":"object","title":"WorkflowStartRequest"},"yagent__app__agent_mgmt__router__CreateChatRequest":{"properties":{"title":{"type":"string","title":"Title"},"model":{"type":"string","title":"Model"}},"type":"object","title":"CreateChatRequest"},"yagent__app__agent_mgmt__router__SendMessageRequest":{"properties":{"content":{"type":"string","title":"Content"},"model_id":{"type":"string","title":"Model Id"}},"type":"object","required":["content"],"title":"SendMessageRequest"},"yagent__app__agent_mgmt__router__UpdateSkillRequest":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"icon":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Icon"},"category":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"content":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Content"},"enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Enabled"},"auto_load":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Auto Load"}},"type":"object","title":"UpdateSkillRequest","description":"更新技能（含正文改写）。"},"yagent__app__chat__router__CreateChatRequest":{"properties":{"title":{"type":"string","title":"Title"},"model":{"type":"string","title":"Model"},"agent_id":{"type":"string","title":"Agent Id"}},"type":"object","title":"CreateChatRequest"},"yagent__app__chat__router__SendMessageRequest":{"properties":{"content":{"type":"string","title":"Content"},"model_id":{"type":"string","title":"Model Id"},"agent_id":{"type":"string","title":"Agent Id"}},"type":"object","required":["content"],"title":"SendMessageRequest"},"yagent__app__skills__router__UpdateSkillRequest":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"category":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Category"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Version"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Config"}},"type":"object","title":"UpdateSkillRequest"}},"securitySchemes":{"HTTPBearer":{"type":"http","scheme":"bearer"}}}}