openapi: 3.1.0
info:
  title: "DataOps Platform API（当前代码基线）"
  version: "2026-07-16"
  description: "由 scripts/generate_openapi.py 从 app/api/*/routes.py 生成。请求体与响应细节仍以现有专项 API 文档和代码为准。"
x-route-count: 116
servers:
  - url: "http://localhost:15500"
    description: "全本地隔离测试后端"
tags:
  - name: meta_data
    description: "/api/meta"
  - name: data_interface
    description: "/api/interface"
  - name: graph
    description: "/api/graph"
  - name: system
    description: "/api/system"
  - name: data_source
    description: "/api/datasource"
  - name: data_flow
    description: "/api/dataflow"
  - name: business_domain
    description: "/api/bd"
  - name: data_factory
    description: "/api/datafactory"
  - name: data_service
    description: "/api/dataservice"
paths:
  "/api/bd/compose":
    post:
      tags: [business_domain]
      operationId: business_domain_bd_compose_post
      summary: "从已有业务领域中组合创建新的业务领域"
      x-source: "app/api/business_domain/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/bd/ddlparse":
    post:
      tags: [business_domain]
      operationId: business_domain_bd_ddl_parse_post
      summary: "解析文件内容，提取数据表定义信息"
      x-source: "app/api/business_domain/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/bd/delete":
    post:
      tags: [business_domain]
      operationId: business_domain_bd_delete_post
      summary: "删除业务领域"
      x-source: "app/api/business_domain/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/bd/detail":
    post:
      tags: [business_domain]
      operationId: business_domain_bd_detail_post
      summary: "获取业务领域详情"
      x-source: "app/api/business_domain/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/bd/download":
    get:
      tags: [business_domain]
      operationId: business_domain_bd_download_get
      summary: "下载业务领域相关文件"
      x-source: "app/api/business_domain/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/bd/graphall":
    post:
      tags: [business_domain]
      operationId: business_domain_bd_graph_all_post
      summary: "获取业务领域完整关系图谱"
      x-source: "app/api/business_domain/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/bd/labellist":
    post:
      tags: [business_domain]
      operationId: business_domain_bd_label_list_post
      summary: "获取数据标签列表（用于业务领域关联）"
      x-source: "app/api/business_domain/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/bd/list":
    post:
      tags: [business_domain]
      operationId: business_domain_bd_list_post
      summary: "获取业务领域列表"
      x-source: "app/api/business_domain/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/bd/save":
    post:
      tags: [business_domain]
      operationId: business_domain_bd_save_post
      summary: "保存业务领域（新建或更新）"
      x-source: "app/api/business_domain/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/bd/search":
    post:
      tags: [business_domain]
      operationId: business_domain_bd_search_post
      summary: "搜索业务领域关联的元数据"
      x-source: "app/api/business_domain/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/bd/update":
    post:
      tags: [business_domain]
      operationId: business_domain_bd_update_post
      summary: "更新业务领域"
      x-source: "app/api/business_domain/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/bd/upload":
    post:
      tags: [business_domain]
      operationId: business_domain_bd_upload_post
      summary: "上传业务领域相关文件"
      x-source: "app/api/business_domain/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datafactory/executions":
    get:
      tags: [data_factory]
      operationId: data_factory_get_all_executions_get
      summary: "获取所有执行记录列表"
      x-source: "app/api/data_factory/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datafactory/executions/{execution_id}":
    get:
      tags: [data_factory]
      operationId: data_factory_get_execution_get
      summary: "获取执行详情"
      x-source: "app/api/data_factory/routes.py"
      parameters:
        - name: execution_id
          in: path
          required: true
          schema:
            type: string
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datafactory/health":
    get:
      tags: [data_factory]
      operationId: data_factory_health_check_get
      summary: "检查 n8n 服务连接状态"
      x-source: "app/api/data_factory/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datafactory/workflows":
    get:
      tags: [data_factory]
      operationId: data_factory_get_workflows_get
      summary: "获取工作流列表"
      x-source: "app/api/data_factory/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datafactory/workflows/{workflow_id}":
    get:
      tags: [data_factory]
      operationId: data_factory_get_workflow_get
      summary: "获取工作流详情"
      x-source: "app/api/data_factory/routes.py"
      parameters:
        - name: workflow_id
          in: path
          required: true
          schema:
            type: string
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datafactory/workflows/{workflow_id}/activate":
    post:
      tags: [data_factory]
      operationId: data_factory_activate_workflow_post
      summary: "激活工作流"
      x-source: "app/api/data_factory/routes.py"
      parameters:
        - name: workflow_id
          in: path
          required: true
          schema:
            type: string
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datafactory/workflows/{workflow_id}/deactivate":
    post:
      tags: [data_factory]
      operationId: data_factory_deactivate_workflow_post
      summary: "停用工作流"
      x-source: "app/api/data_factory/routes.py"
      parameters:
        - name: workflow_id
          in: path
          required: true
          schema:
            type: string
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datafactory/workflows/{workflow_id}/execute":
    post:
      tags: [data_factory]
      operationId: data_factory_execute_workflow_post
      summary: "触发工作流执行"
      x-source: "app/api/data_factory/routes.py"
      parameters:
        - name: workflow_id
          in: path
          required: true
          schema:
            type: string
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datafactory/workflows/{workflow_id}/executions":
    get:
      tags: [data_factory]
      operationId: data_factory_get_workflow_executions_get
      summary: "获取工作流的执行记录列表"
      x-source: "app/api/data_factory/routes.py"
      parameters:
        - name: workflow_id
          in: path
          required: true
          schema:
            type: string
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datafactory/workflows/{workflow_id}/status":
    get:
      tags: [data_factory]
      operationId: data_factory_get_workflow_status_get
      summary: "获取工作流状态"
      x-source: "app/api/data_factory/routes.py"
      parameters:
        - name: workflow_id
          in: path
          required: true
          schema:
            type: string
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataflow/add-dataflow":
    post:
      tags: [data_flow]
      operationId: data_flow_create_dataflow_post
      summary: "创建新的数据流"
      x-source: "app/api/data_flow/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataflow/delete-dataflow/{dataflow_id}":
    delete:
      tags: [data_flow]
      operationId: data_flow_delete_dataflow_delete
      summary: "删除数据流"
      x-source: "app/api/data_flow/routes.py"
      parameters:
        - name: dataflow_id
          in: path
          required: true
          schema:
            type: integer
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataflow/get-BD-list":
    get:
      tags: [data_flow]
      operationId: data_flow_get_business_domain_list_get
      summary: "获取BusinessDomain节点列表"
      x-source: "app/api/data_flow/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataflow/get-dataflow/{dataflow_id}":
    get:
      tags: [data_flow]
      operationId: data_flow_get_dataflow_get
      summary: "根据ID获取数据流详情"
      x-source: "app/api/data_flow/routes.py"
      parameters:
        - name: dataflow_id
          in: path
          required: true
          schema:
            type: integer
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataflow/get-dataflows-list":
    get:
      tags: [data_flow]
      operationId: data_flow_get_dataflows_get
      summary: "获取数据流列表"
      x-source: "app/api/data_flow/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataflow/get-script/{dataflow_id}":
    get:
      tags: [data_flow]
      operationId: data_flow_get_script_get
      summary: "获取 DataFlow 关联的脚本内容"
      x-source: "app/api/data_flow/routes.py"
      parameters:
        - name: dataflow_id
          in: path
          required: true
          schema:
            type: integer
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataflow/update-dataflow/{dataflow_id}":
    put:
      tags: [data_flow]
      operationId: data_flow_update_dataflow_put
      summary: "更新数据流"
      x-source: "app/api/data_flow/routes.py"
      parameters:
        - name: dataflow_id
          in: path
          required: true
          schema:
            type: integer
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataflow/{dataflow_uid}/workflow-versions":
    get:
      tags: [data_flow]
      operationId: data_flow_get_workflow_versions_get
      summary: "get workflow versions"
      x-source: "app/api/data_flow/routes.py"
      parameters:
        - name: dataflow_uid
          in: path
          required: true
          schema:
            type: string
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
    post:
      tags: [data_flow]
      operationId: data_flow_add_workflow_version_post
      summary: "add workflow version"
      x-source: "app/api/data_flow/routes.py"
      parameters:
        - name: dataflow_uid
          in: path
          required: true
          schema:
            type: string
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataflow/{dataflow_uid}/workflow-versions/{version_id}/activate":
    post:
      tags: [data_flow]
      operationId: data_flow_activate_workflow_version_post
      summary: "activate workflow version"
      x-source: "app/api/data_flow/routes.py"
      parameters:
        - name: dataflow_uid
          in: path
          required: true
          schema:
            type: string
        - name: version_id
          in: path
          required: true
          schema:
            type: string
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataservice/neworder":
    post:
      tags: [data_service]
      operationId: data_service_create_order_post
      summary: "创建数据订单"
      x-source: "app/api/data_service/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataservice/orderlist":
    get:
      tags: [data_service]
      operationId: data_service_get_orders_get
      summary: "获取数据订单列表"
      x-source: "app/api/data_service/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataservice/orders/{order_id}/analyze":
    post:
      tags: [data_service]
      operationId: data_service_analyze_order_post
      summary: "分析数据订单（提取实体并检测图谱连通性）"
      x-source: "app/api/data_service/routes.py"
      parameters:
        - name: order_id
          in: path
          required: true
          schema:
            type: integer
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataservice/orders/{order_id}/approve":
    post:
      tags: [data_service]
      operationId: data_service_approve_order_post
      summary: "审批通过数据订单，并自动生成 BusinessDomain 和 DataFlow 资源"
      x-source: "app/api/data_service/routes.py"
      parameters:
        - name: order_id
          in: path
          required: true
          schema:
            type: integer
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataservice/orders/{order_id}/complete":
    post:
      tags: [data_service]
      operationId: data_service_complete_order_post
      summary: "标记数据订单为最终完成状态"
      x-source: "app/api/data_service/routes.py"
      parameters:
        - name: order_id
          in: path
          required: true
          schema:
            type: integer
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataservice/orders/{order_id}/delete":
    put:
      tags: [data_service]
      operationId: data_service_delete_order_put
      summary: "删除数据订单（软删除）"
      x-source: "app/api/data_service/routes.py"
      parameters:
        - name: order_id
          in: path
          required: true
          schema:
            type: integer
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataservice/orders/{order_id}/detail":
    get:
      tags: [data_service]
      operationId: data_service_get_order_get
      summary: "获取数据订单详情"
      x-source: "app/api/data_service/routes.py"
      parameters:
        - name: order_id
          in: path
          required: true
          schema:
            type: integer
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataservice/orders/{order_id}/onboard":
    post:
      tags: [data_service]
      operationId: data_service_onboard_order_post
      summary: "数据工厂回调：设置订单为数据产品就绪状态"
      x-source: "app/api/data_service/routes.py"
      parameters:
        - name: order_id
          in: path
          required: true
          schema:
            type: integer
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataservice/orders/{order_id}/reject":
    post:
      tags: [data_service]
      operationId: data_service_reject_order_post
      summary: "驳回数据订单"
      x-source: "app/api/data_service/routes.py"
      parameters:
        - name: order_id
          in: path
          required: true
          schema:
            type: integer
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataservice/orders/{order_id}/update":
    put:
      tags: [data_service]
      operationId: data_service_update_order_put
      summary: "更新数据订单（支持修改描述和提取结果）"
      x-source: "app/api/data_service/routes.py"
      parameters:
        - name: order_id
          in: path
          required: true
          schema:
            type: integer
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataservice/products":
    get:
      tags: [data_service]
      operationId: data_service_get_products_get
      summary: "获取数据产品列表"
      x-source: "app/api/data_service/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
    post:
      tags: [data_service]
      operationId: data_service_register_product_post
      summary: "手动注册数据产品"
      x-source: "app/api/data_service/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataservice/products/{product_id}":
    delete:
      tags: [data_service]
      operationId: data_service_delete_product_delete
      summary: "删除数据产品"
      x-source: "app/api/data_service/routes.py"
      parameters:
        - name: product_id
          in: path
          required: true
          schema:
            type: integer
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
    get:
      tags: [data_service]
      operationId: data_service_get_product_get
      summary: "获取数据产品详情"
      x-source: "app/api/data_service/routes.py"
      parameters:
        - name: product_id
          in: path
          required: true
          schema:
            type: integer
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataservice/products/{product_id}/download":
    get:
      tags: [data_service]
      operationId: data_service_download_product_excel_get
      summary: "下载数据产品数据为Excel文件"
      x-source: "app/api/data_service/routes.py"
      parameters:
        - name: product_id
          in: path
          required: true
          schema:
            type: integer
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataservice/products/{product_id}/lineage-visualization":
    post:
      tags: [data_service]
      operationId: data_service_get_lineage_visualization_post
      summary: "获取数据产品的血缘可视化数据"
      x-source: "app/api/data_service/routes.py"
      parameters:
        - name: product_id
          in: path
          required: true
          schema:
            type: integer
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataservice/products/{product_id}/preview":
    get:
      tags: [data_service]
      operationId: data_service_get_product_preview_get
      summary: "获取数据产品的数据预览（默认200条）"
      x-source: "app/api/data_service/routes.py"
      parameters:
        - name: product_id
          in: path
          required: true
          schema:
            type: integer
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataservice/products/{product_id}/refresh":
    post:
      tags: [data_service]
      operationId: data_service_refresh_product_stats_post
      summary: "刷新数据产品的统计信息"
      x-source: "app/api/data_service/routes.py"
      parameters:
        - name: product_id
          in: path
          required: true
          schema:
            type: integer
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/dataservice/products/{product_id}/viewed":
    post:
      tags: [data_service]
      operationId: data_service_mark_product_viewed_post
      summary: "标记数据产品为已查看（消除更新提示）"
      x-source: "app/api/data_service/routes.py"
      parameters:
        - name: product_id
          in: path
          required: true
          schema:
            type: integer
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datasource/conntest":
    post:
      tags: [data_source]
      operationId: data_source_data_source_conn_test_post
      summary: "data source conn test"
      x-source: "app/api/data_source/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datasource/delete":
    post:
      tags: [data_source]
      operationId: data_source_data_source_delete_post
      summary: "data source delete"
      x-source: "app/api/data_source/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datasource/graph":
    post:
      tags: [data_source]
      operationId: data_source_data_source_graph_relationship_post
      summary: "data source graph relationship"
      x-source: "app/api/data_source/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datasource/list":
    post:
      tags: [data_source]
      operationId: data_source_data_source_list_post
      summary: "data source list"
      x-source: "app/api/data_source/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datasource/parse":
    post:
      tags: [data_source]
      operationId: data_source_data_source_connstr_parse_post
      summary: "data source connstr parse"
      x-source: "app/api/data_source/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datasource/pools":
    get:
      tags: [data_source]
      operationId: data_source_data_source_pool_list_get
      summary: "data source pool list"
      x-source: "app/api/data_source/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datasource/save":
    post:
      tags: [data_source]
      operationId: data_source_data_source_save_post
      summary: "data source save"
      x-source: "app/api/data_source/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datasource/valid":
    post:
      tags: [data_source]
      operationId: data_source_data_source_connstr_valid_post
      summary: "data source connstr valid"
      x-source: "app/api/data_source/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datasource/{data_source_uid}/pool":
    get:
      tags: [data_source]
      operationId: data_source_data_source_pool_status_get
      summary: "data source pool status"
      x-source: "app/api/data_source/routes.py"
      parameters:
        - name: data_source_uid
          in: path
          required: true
          schema:
            type: string
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/datasource/{data_source_uid}/pool/invalidate":
    post:
      tags: [data_source]
      operationId: data_source_data_source_pool_invalidate_post
      summary: "data source pool invalidate"
      x-source: "app/api/data_source/routes.py"
      parameters:
        - name: data_source_uid
          in: path
          required: true
          schema:
            type: string
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/graph/node/create":
    post:
      tags: [graph]
      operationId: graph_create_node_post
      summary: "创建新节点"
      x-source: "app/api/graph/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/graph/query":
    post:
      tags: [graph]
      operationId: graph_query_graph_post
      summary: "执行自定义Cypher查询"
      x-source: "app/api/graph/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/graph/relationship/create":
    post:
      tags: [graph]
      operationId: graph_create_rel_post
      summary: "创建节点间的关系"
      x-source: "app/api/graph/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/graph/subgraph":
    post:
      tags: [graph]
      operationId: graph_get_graph_data_post
      summary: "获取子图数据"
      x-source: "app/api/graph/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/interface/data/label/add":
    post:
      tags: [data_interface]
      operationId: data_interface_data_label_add_post
      summary: "data label add"
      x-source: "app/api/data_interface/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/interface/data/label/delete":
    post:
      tags: [data_interface]
      operationId: data_interface_data_label_delete_post
      summary: "Delete data label node"
      x-source: "app/api/data_interface/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/interface/data/label/detail":
    post:
      tags: [data_interface]
      operationId: data_interface_data_label_detail_post
      summary: "data label detail"
      x-source: "app/api/data_interface/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/interface/data/label/dynamic/identify":
    post:
      tags: [data_interface]
      operationId: data_interface_data_label_dynamic_identify_post
      summary: "data label dynamic identify"
      x-source: "app/api/data_interface/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/interface/data/label/graph/all":
    post:
      tags: [data_interface]
      operationId: data_interface_data_label_graph_post
      summary: "data label graph"
      x-source: "app/api/data_interface/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/interface/data/label/list":
    post:
      tags: [data_interface]
      operationId: data_interface_data_label_list_post
      summary: "data label list"
      x-source: "app/api/data_interface/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/interface/data/standard/add":
    post:
      tags: [data_interface]
      operationId: data_interface_data_standard_add_post
      summary: "data standard add"
      x-source: "app/api/data_interface/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/interface/data/standard/code":
    post:
      tags: [data_interface]
      operationId: data_interface_data_standard_code_post
      summary: "data standard code"
      x-source: "app/api/data_interface/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/interface/data/standard/detail":
    post:
      tags: [data_interface]
      operationId: data_interface_data_standard_detail_post
      summary: "data standard detail"
      x-source: "app/api/data_interface/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/interface/data/standard/graph/all":
    post:
      tags: [data_interface]
      operationId: data_interface_data_standard_graph_all_post
      summary: "data standard graph all"
      x-source: "app/api/data_interface/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/interface/data/standard/list":
    post:
      tags: [data_interface]
      operationId: data_interface_data_standard_list_post
      summary: "data standard list"
      x-source: "app/api/data_interface/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/interface/data/standard/update":
    post:
      tags: [data_interface]
      operationId: data_interface_data_standard_update_post
      summary: "data standard update"
      x-source: "app/api/data_interface/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/interface/graphall":
    post:
      tags: [data_interface]
      operationId: data_interface_interface_graph_all_post
      summary: "获取完整关系图谱"
      x-source: "app/api/data_interface/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/interface/labellist":
    post:
      tags: [data_interface]
      operationId: data_interface_interface_label_list_post
      summary: "获取 DataLabel 列表（支持多条件 category_filter 过滤）"
      x-source: "app/api/data_interface/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/interface/metric/label/standard/delete":
    post:
      tags: [data_interface]
      operationId: data_interface_metric_label_standard_delete_post
      summary: "metric label standard delete"
      x-source: "app/api/data_interface/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/check":
    get:
      tags: [meta_data]
      operationId: meta_data_meta_check_get
      summary: "检查元数据中文名是否已存在"
      x-source: "app/api/meta_data/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/config":
    get:
      tags: [meta_data]
      operationId: meta_data_get_meta_config_get
      summary: "获取元数据配置信息"
      x-source: "app/api/meta_data/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/full/text/query":
    post:
      tags: [meta_data]
      operationId: meta_data_full_text_query_post
      summary: "full text query"
      x-source: "app/api/meta_data/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/node/add":
    post:
      tags: [meta_data]
      operationId: meta_data_meta_node_add_post
      summary: "新增元数据节点"
      x-source: "app/api/meta_data/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/node/delete":
    post:
      tags: [meta_data]
      operationId: meta_data_meta_node_delete_post
      summary: "meta node delete"
      x-source: "app/api/meta_data/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/node/edit":
    post:
      tags: [meta_data]
      operationId: meta_data_meta_node_edit_post
      summary: "meta node edit"
      x-source: "app/api/meta_data/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/node/graph":
    post:
      tags: [meta_data]
      operationId: meta_data_meta_node_graph_post
      summary: "meta node graph"
      x-source: "app/api/meta_data/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/node/list":
    post:
      tags: [meta_data]
      operationId: meta_data_meta_node_list_post
      summary: "meta node list"
      x-source: "app/api/meta_data/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/node/update":
    post:
      tags: [meta_data]
      operationId: meta_data_meta_node_update_post
      summary: "更新元数据节点"
      x-source: "app/api/meta_data/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/resource/display":
    post:
      tags: [meta_data]
      operationId: meta_data_upload_file_display_post
      summary: "upload file display"
      x-source: "app/api/meta_data/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/resource/download":
    get:
      tags: [meta_data]
      operationId: meta_data_download_file_get
      summary: "download file"
      x-source: "app/api/meta_data/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/resource/node":
    post:
      tags: [meta_data]
      operationId: meta_data_text_resource_node_post
      summary: "text resource node"
      x-source: "app/api/meta_data/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/resource/translate":
    post:
      tags: [meta_data]
      operationId: meta_data_text_resource_translate_post
      summary: "text resource translate"
      x-source: "app/api/meta_data/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/resource/upload":
    post:
      tags: [meta_data]
      operationId: meta_data_upload_file_post
      summary: "upload file"
      x-source: "app/api/meta_data/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/review/create":
    post:
      tags: [meta_data]
      operationId: meta_data_metadata_review_create_post
      summary: "创建元数据审核记录"
      x-source: "app/api/meta_data/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/review/detail":
    get:
      tags: [meta_data]
      operationId: meta_data_metadata_review_detail_get
      summary: "审核记录详情"
      x-source: "app/api/meta_data/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/review/list":
    post:
      tags: [meta_data]
      operationId: meta_data_metadata_review_list_post
      summary: "审核记录列表：疑似冗余/变动"
      x-source: "app/api/meta_data/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/review/resolve":
    post:
      tags: [meta_data]
      operationId: meta_data_metadata_review_resolve_post
      summary: "处理审核记录"
      x-source: "app/api/meta_data/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/search":
    get:
      tags: [meta_data]
      operationId: meta_data_search_metadata_route_get
      summary: "search metadata route"
      x-source: "app/api/meta_data/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/text/graph":
    post:
      tags: [meta_data]
      operationId: meta_data_create_text_graph_post
      summary: "create text graph"
      x-source: "app/api/meta_data/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/unstructure/text/query":
    post:
      tags: [meta_data]
      operationId: meta_data_unstructure_text_query_post
      summary: "unstructure text query"
      x-source: "app/api/meta_data/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/meta/unstructured/process":
    post:
      tags: [meta_data]
      operationId: meta_data_processing_unstructured_data_post
      summary: "processing unstructured data"
      x-source: "app/api/meta_data/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/system/auth/login":
    post:
      tags: [system]
      operationId: system_user_login_post
      summary: "用户登录"
      x-source: "app/api/system/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/system/auth/me":
    get:
      tags: [system]
      operationId: system_current_user_get
      summary: "current user"
      x-source: "app/api/system/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/system/config":
    get:
      tags: [system]
      operationId: system_system_config_get
      summary: "获取系统配置信息"
      x-source: "app/api/system/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/system/config/validate":
    get:
      tags: [system]
      operationId: system_config_validate_get
      summary: "验证系统配置的有效性"
      x-source: "app/api/system/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/system/health":
    get:
      tags: [system]
      operationId: system_health_check_get
      summary: "系统健康状态检查"
      x-source: "app/api/system/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/system/info":
    get:
      tags: [system]
      operationId: system_system_info_get
      summary: "获取系统运行环境信息"
      x-source: "app/api/system/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/system/translate":
    post:
      tags: [system]
      operationId: system_translate_post
      summary: "翻译节点名称"
      x-source: "app/api/system/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/system/users":
    get:
      tags: [system]
      operationId: system_list_users_get
      summary: "list users"
      x-source: "app/api/system/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
    post:
      tags: [system]
      operationId: system_create_user_post
      summary: "create user"
      x-source: "app/api/system/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/system/users/{user_id}":
    put:
      tags: [system]
      operationId: system_update_user_put
      summary: "update user"
      x-source: "app/api/system/routes.py"
      parameters:
        - name: user_id
          in: path
          required: true
          schema:
            type: string
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/system/users/{user_id}/roles":
    put:
      tags: [system]
      operationId: system_update_user_roles_put
      summary: "update user roles"
      x-source: "app/api/system/routes.py"
      parameters:
        - name: user_id
          in: path
          required: true
          schema:
            type: string
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/system/workbench/layout":
    get:
      tags: [system]
      operationId: system_get_workbench_layout_get
      summary: "get workbench layout"
      x-source: "app/api/system/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
    put:
      tags: [system]
      operationId: system_put_workbench_layout_put
      summary: "put workbench layout"
      x-source: "app/api/system/routes.py"
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
  "/api/system/workbench/registry":
    get:
      tags: [system]
      operationId: system_workbench_registry_get
      summary: "workbench registry"
      x-source: "app/api/system/routes.py"
      responses:
        "200":
          description: "请求已由当前实现处理"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
        default:
          description: "错误响应"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiEnvelope'
components:
  schemas:
    ApiEnvelope:
      type: object
      additionalProperties: true
      properties:
        success:
          type: boolean
        code:
          type: integer
        message:
          type: string
        data: {}
        timestamp:
          type: integer
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: "下一阶段统一认证方案；当前路由尚未全部接入。"
