tianfeng_task_modules/api_doc/API接口文档.md
2025-03-18 18:34:03 +08:00

10 KiB
Raw Permalink Blame History

天风任务系统 API 接口文档

目录

组件管理 API

获取所有组件类型及详细信息

获取系统中所有组件类型及其详细信息。

接口地址/component/components

请求方式GET

请求参数:无

响应数据

{
  "code": 200,
  "message": "获取组件类型成功",
  "data": {
    "component_types": ["string"],
    "component_type_info": [
      {
        "type": "string",
        "name": "string"
      }
    ],
    "component_categories": {
      "category": ["string"]
    },
    "component_details": ["object"],
    "component_details_by_type": {
      "type": ["object"]
    }
  }
}

说明

  • component_types: 所有组件类型的列表
  • component_type_info: 包含中文名称的组件类型信息
  • component_categories: 按类别分组的组件类型
  • component_details: 所有组件的详细配置
  • component_details_by_type: 按组件类型分组的详细配置

获取指定类型的组件详细信息

获取指定类型的组件详细信息。

接口地址/component/components/{component_type}

请求方式GET

请求参数

参数名 类型 必须 说明
component_type string 组件类型

响应数据

{
  "code": 200,
  "message": "获取组件详细信息成功",
  "data": {
    "components": ["object"]
  }
}

说明

  • components: 指定类型的组件详细配置列表

自动发现并注册组件

自动发现并注册组件。

接口地址/component/components/discover

请求方式POST

请求参数

{
  "package_name": "string"
}

响应数据

{
  "code": 200,
  "message": "自动发现组件成功,共发现 x 个组件",
  "data": {
    "component_types": ["string"]
  }
}

说明

  • component_types: 发现的组件类型列表

任务管理 API

获取任务列表

获取任务列表,支持多种筛选条件、排序和分页。

接口地址/tasks

请求方式GET

请求参数

参数名 类型 必须 说明
status string 任务状态
task_type string 任务类型
name string 任务名称(模糊查询)
is_scheduled boolean 是否为定时任务
created_start integer 创建时间起始(毫秒时间戳)
created_end integer 创建时间结束(毫秒时间戳)
sort_by string 排序字段,默认为 CREATED_AT
sort_order string 排序方式,默认为 DESC
page integer 页码,默认为 1
page_size integer 每页数量,默认为 10

响应数据

{
  "code": 200,
  "message": "获取任务列表成功",
  "data": {
    "tasks": ["object"],
    "pagination": {
      "page": 1,
      "page_size": 10,
      "total": 100,
      "total_pages": 10
    }
  }
}

说明

  • tasks: 任务列表
  • pagination: 分页信息

获取任务类型列表

获取系统中所有任务类型列表。

接口地址/task/types

请求方式GET

请求参数:无

响应数据

{
  "code": 200,
  "message": "获取任务类型列表成功",
  "data": [
    {
      "key": "string",
      "name": "string",
      "description": "string",
      "value": "string"
    }
  ]
}

说明

  • key: 任务类型的键
  • name: 任务类型的名称
  • description: 任务类型的描述
  • value: 任务类型的枚举值

创建任务

创建一个新任务。

接口地址/task/create

请求方式POST

请求参数

{
  "name": "string",
  "task_type": "string"
}

响应数据

{
  "code": 200,
  "message": "创建任务成功",
  "data": {
    "task_id": "string",
    "name": "string",
    "task_type": "string",
    "task_type_name": "string",
    "created_at": "timestamp",
    "updated_at": "timestamp"
  }
}

说明

  • task_id: 任务ID
  • name: 任务名称
  • task_type: 任务类型
  • task_type_name: 任务类型中文名称

删除任务

删除指定ID的任务。

接口地址/task/{task_id}

请求方式DELETE

请求参数

参数名 类型 必须 说明
task_id string 任务ID

响应数据

{
  "code": 200,
  "message": "删除任务成功",
  "data": null
}

批量删除任务

批量删除多个任务。

接口地址/task/batch

请求方式DELETE

请求参数

{
  "task_ids": ["string"]
}

响应数据

{
  "code": 200,
  "message": "批量删除任务成功,共删除 x 个任务",
  "data": {
    "deleted_count": 0,
    "total_count": 0,
    "not_found_ids": ["string"]
  }
}

说明

  • deleted_count: 成功删除的任务数量
  • total_count: 总共请求删除的任务数量
  • not_found_ids: 未找到的任务ID列表

更新任务基本信息

更新任务的基本信息。

接口地址/task/{task_id}

请求方式PUT

请求参数

参数名 类型 必须 说明
task_id string 任务ID
{
  "name": "string",
  "description": "string",
  "task_type": "string",
  "blocks": ["object"],
  "variables": ["object"],
  "schedule": "object"
}

响应数据

{
  "code": 200,
  "message": "更新任务成功",
  "data": {
    "task": "object"
  }
}

获取任务编辑信息

获取任务的编辑信息,包括任务实例、组件、参数等。

接口地址/task/{task_id}/edit

请求方式GET

请求参数

参数名 类型 必须 说明
task_id string 任务ID

响应数据

{
  "code": 200,
  "message": "获取任务编辑信息成功",
  "data": {
    "task": "object",
    "instance": "object",
    "component_types": "object",
    "common_params": "object",
    "task_input_params": ["object"],
    "block_output_params": "object",
    "context_params": "object"
  }
}

说明

  • task: 任务基本信息
  • instance: 任务实例信息
  • component_types: 组件类型信息
  • common_params: 常用参数数据
  • task_input_params: 任务输入参数
  • block_output_params: 块输出参数
  • context_params: 上下文参数

获取可用的子任务列表

获取可用的子任务列表,用于任务嵌套。

接口地址/tasks/available-subtasks

请求方式GET

请求参数

参数名 类型 必须 说明
current_task_id string 当前任务ID用于排除自身

响应数据

{
  "code": 200,
  "message": "获取可用子任务列表成功",
  "data": {
    "subtasks": [
      {
        "task_id": "string",
        "name": "string"
      }
    ]
  }
}

任务参数管理 API

获取任务输入参数表单字段定义

获取任务输入参数表单字段定义,用于前端表单生成。

接口地址/task/input-params/fields

请求方式GET

请求参数:无

响应数据

{
  "code": 200,
  "message": "获取任务输入参数表单字段定义成功",
  "data": {
    "form_fields": ["object"]
  }
}

说明

  • form_fields: 表单字段定义列表

获取任务输入参数配置

获取任务输入参数配置,包括系统默认参数和用户自定义参数。

接口地址/task/{task_id}/input-params

请求方式GET

请求参数

参数名 类型 必须 说明
task_id string 任务ID
instance_id string 任务实例ID不传则使用最新实例

响应数据

{
  "code": 200,
  "message": "获取任务输入参数成功",
  "data": {
    "task_id": "string",
    "instance_id": "string",
    "params": ["object"]
  }
}

说明

  • params: 任务输入参数列表

更新任务输入参数配置

更新任务输入参数配置,批量保存用户自定义的任务输入参数配置。

接口地址/task/{task_id}/input-params

请求方式POST

请求参数

参数名 类型 必须 说明
task_id string 任务ID
instance_id string 任务实例ID不传则使用最新实例或创建新实例

请求体:

[
  {
    "param_name": "string",
    "label": "string",
    "param_type": "string",
    "required": true,
    "default_value": "any",
    "description": "string"
  }
]

响应数据

{
  "code": 200,
  "message": "更新任务输入参数成功",
  "data": {
    "task_id": "string",
    "instance_id": "string",
    "updated_params_count": 0,
    "has_changes": true
  }
}

说明

  • updated_params_count: 更新的参数数量
  • has_changes: 是否有参数变动