Files
task_pilot/frontend/src/api/generated.ts
T
CNWei 917674880b feat: 拆分任务类型并支持脚本语言联动
- 任务类型改为「执行脚本 / 发起 HTTP 请求 / 运行二进制程序」,脚本类型下新增语言选择(Python / Shell / Node / Lua)
- 语言联动表单:Python 才显示虚拟环境、解释器和 uv 状态;Shell/Node/Lua 隐藏这些字段并切换脚本标签、占位符和调用预览
- 切换语言时自动设置解释器与默认脚本,Shell 通过 cmd.exe /C 执行批处理,Node/Lua 使用对应解释器
- TaskAction 新增可选 language,旧任务按解释器推断;补 Shell 执行测试、语言切换单测与 Playwright 用例
2026-11-04 22:07:14 +08:00

1548 lines
44 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/**
* This file was auto-generated by openapi-typescript.
* Do not make direct changes to the file.
*/
export interface paths {
"/api/v1/cron/preview": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
post: operations["preview_cron"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/events": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["execution_events"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/health": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["health"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/python/mirrors": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["list_python_mirrors"];
put?: never;
post: operations["create_python_mirror"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/python/mirrors/{id}": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["get_python_mirror"];
put: operations["update_python_mirror"];
post?: never;
delete: operations["delete_python_mirror"];
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/python/mirrors/{id}/default": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
post: operations["set_default_python_mirror"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/python/venv": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
post: operations["probe_python_venv"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/python/venv/create": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
post: operations["create_python_venv"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/runs/{run_id}": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["get_run"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/runs/{run_id}/cancel": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
post: operations["cancel_run"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/runs/{run_id}/logs": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["get_run_logs"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/runs/{run_id}/logs/download": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["download_run_logs"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/schedule": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["list_schedule"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/session": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["session"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/stats": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["task_stats"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/system/directories": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["list_directories"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/tasks": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["list_tasks"];
put?: never;
post: operations["create_task"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/tasks/{id}": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["get_task"];
put: operations["update_task"];
post?: never;
delete: operations["delete_task"];
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/tasks/{id}/disable": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
post: operations["disable_task"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/tasks/{id}/enable": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
post: operations["enable_task"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/tasks/{id}/run": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
post: operations["run_task"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/tasks/{id}/runs": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["list_task_runs"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
}
export type webhooks = Record<string, never>;
export interface components {
schemas: {
/** @enum {string} */
ConcurrencyPolicy: "skip";
CreatePythonMirrorRequest: {
enabled?: boolean;
index_url: string;
name: string;
trusted_host?: string | null;
};
/** @description 用 uv 为项目创建 `.venv`(pyproject 用 uv sync,requirements 用 uv venv + uv pip install)。 */
CreatePythonVenvRequest: {
working_dir: string;
};
CreateTaskRequest: {
action: components["schemas"]["TaskAction"];
concurrency_policy?: components["schemas"]["ConcurrencyPolicy"];
cron: string;
enabled?: boolean;
id: string;
name: string;
retry_policy?: components["schemas"]["RetryPolicy"];
/** Format: int64 */
timeout_secs?: number;
timezone?: string;
};
CronPreviewRequest: {
count: number;
expression: string;
timezone: string;
};
CronPreviewResponse: {
runs: string[];
timezone: string;
};
DirectoryEntry: {
/** @description 用于展示的名称 */
name: string;
/** @description 绝对路径,选中后回填到表单 */
path: string;
};
DirectoryListingResponse: {
entries: components["schemas"]["DirectoryEntry"][];
/** @description 上一级目录;盘符根目录和盘符列表为 null */
parent?: string | null;
/** @description 当前目录;为 null 表示正在列出盘符 */
path?: string | null;
/** @description 条目超过上限被截断时为 true */
truncated: boolean;
};
ErrorResponse: {
code: string;
details: {
[key: string]: string;
};
field?: string | null;
message: string;
};
HealthResponse: {
/** @description Stable service identifier. */
service: string;
/** @description Current service status. */
status: string;
/** @description Backend package version. */
version: string;
};
/** @enum {string} */
HttpMethod: "GET" | "POST";
/** @enum {string} */
InterpreterKind: "python" | "node" | "other";
LogChunkResponse: {
complete: boolean;
content: string;
/** Format: int64 */
next_offset: number;
};
/** @description 一个 Python 包索引镜像(pip / uv)。 */
PythonMirrorResponse: {
/** Format: date-time */
created_at: string;
enabled: boolean;
id: string;
/** @description pip 的 `--index-url`,运行时注入 `PIP_INDEX_URL` */
index_url: string;
/** @description 当前默认镜像;同一时间最多一个 */
is_default: boolean;
name: string;
/** @description pip 的 `--trusted-host`;https 源通常为空 */
trusted_host?: string | null;
/** Format: date-time */
updated_at: string;
};
RetryPolicy: {
/** Format: int64 */
delay_secs?: number;
/** Format: int32 */
max_attempts?: number;
};
/** @enum {string} */
RunStatus: "queued" | "running" | "succeeded" | "failed" | "timed_out" | "cancelled" | "skipped";
/** @enum {string} */
RunTrigger: "schedule" | "manual" | "retry";
/** @description 已注册调度的任务及其下次触发时间。 */
ScheduledTaskResponse: {
/**
* Format: date-time
* @description 下次触发时间;调度正在重建时可能为空
*/
next_run_at?: string | null;
task_id: string;
};
/** @enum {string} */
ScriptLanguage: "python" | "shell" | "node" | "lua";
SessionResponse: {
/** @description Random per-process token required for mutating browser requests. */
token: string;
};
TaskAction: {
args?: string[];
env?: {
[key: string]: string;
};
interpreter: string;
language?: components["schemas"]["ScriptLanguage"] | null;
script: string;
/** @enum {string} */
type: "script";
venv?: string | null;
working_dir: string;
} | {
body?: string | null;
expected_status?: number[];
headers?: {
[key: string]: string;
};
method: components["schemas"]["HttpMethod"];
/** @enum {string} */
type: "http";
url: string;
} | {
args?: string[];
env?: {
[key: string]: string;
};
executable: string;
/** @enum {string} */
type: "process";
working_dir?: string | null;
};
/** @enum {string} */
TaskActionType: "script" | "http" | "process";
TaskListResponse: {
items: components["schemas"]["TaskResponse"][];
/** Format: int32 */
page: number;
/** Format: int32 */
page_size: number;
/** Format: int64 */
total: number;
};
TaskResponse: {
action: components["schemas"]["TaskAction"];
concurrency_policy: components["schemas"]["ConcurrencyPolicy"];
/** Format: date-time */
created_at: string;
cron: string;
enabled: boolean;
id: string;
name: string;
retry_policy: components["schemas"]["RetryPolicy"];
/** Format: int64 */
timeout_secs: number;
timezone: string;
/** Format: date-time */
updated_at: string;
};
TaskRunListResponse: {
items: components["schemas"]["TaskRunResponse"][];
/** Format: int32 */
page: number;
/** Format: int32 */
page_size: number;
/** Format: int64 */
total: number;
};
TaskRunResponse: {
/** Format: date-time */
created_at: string;
/** Format: int64 */
duration_ms?: number | null;
error_message?: string | null;
/** Format: int32 */
exit_code?: number | null;
/** Format: date-time */
finished_at?: string | null;
/** Format: int64 */
id: number;
/** Format: date-time */
started_at?: string | null;
status: components["schemas"]["RunStatus"];
task_id: string;
trigger: components["schemas"]["RunTrigger"];
};
/** @description 仪表盘指标:一次请求拿到全部计数,避免为每个指标各发一次列表查询。 */
TaskStatsResponse: {
/**
* Format: int64
* @description 已启用任务数
*/
enabled: number;
/**
* Format: int64
* @description HTTP 类任务数
*/
http: number;
/**
* Format: int64
* @description 进程类任务数
*/
process: number;
/**
* Format: int64
* @description 当前正在执行的任务数
*/
running: number;
/**
* Format: int64
* @description 脚本类任务数
*/
script: number;
/**
* Format: int64
* @description 任务总数
*/
total: number;
};
UpdatePythonMirrorRequest: {
enabled: boolean;
index_url: string;
name: string;
trusted_host?: string | null;
};
UpdateTaskRequest: {
action: components["schemas"]["TaskAction"];
concurrency_policy?: components["schemas"]["ConcurrencyPolicy"];
cron: string;
enabled?: boolean;
name: string;
retry_policy?: components["schemas"]["RetryPolicy"];
/** Format: int64 */
timeout_secs?: number;
timezone?: string;
};
/** @description 编辑器在用户填写工作目录时发起的探测请求。 */
VenvProbeRequest: {
/** @description 解释器或可执行程序,对应 `action.interpreter` */
interpreter: string;
/** @description 手动填写的虚拟环境目录,对应 `action.venv` */
venv?: string | null;
/** @description 任务工作目录,对应 `action.working_dir` */
working_dir: string;
};
VenvProbeResponse: {
/** @description 没有虚拟环境时,是否具备用 uv 创建的条件 */
can_create: boolean;
/** @description 供界面展示的解释器路径;位于工作目录内时使用相对路径 */
display_path?: string | null;
/** @description 工作目录根部是否存在 pyproject.toml */
has_pyproject: boolean;
/** @description 工作目录根部是否存在 requirements*.txt */
has_requirements: boolean;
interpreter_kind: components["schemas"]["InterpreterKind"];
message: string;
/** @description 探测到的 requirements 文件名(仅根目录) */
requirements_files: string[];
source?: components["schemas"]["VenvSource"] | null;
status: components["schemas"]["VenvProbeStatus"];
/** @description 本机 PATH 中是否能找到 uv */
uv_available: boolean;
/** @description 虚拟环境根目录的绝对路径 */
venv_path?: string | null;
};
/** @enum {string} */
VenvProbeStatus: "linked" | "invalid" | "missing" | "not_applicable" | "incomplete";
/**
* @description 虚拟环境的来源,用于在界面上说明"为什么"关联到了这个环境。
* @enum {string}
*/
VenvSource: "configured" | "interpreter" | "working_directory";
};
responses: never;
parameters: never;
requestBodies: never;
headers: never;
pathItems: never;
}
export type $defs = Record<string, never>;
export interface operations {
preview_cron: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["CronPreviewRequest"];
};
};
responses: {
/** @description Upcoming cron occurrences */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["CronPreviewResponse"];
};
};
/** @description Invalid cron preview request */
400: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
execution_events: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Run status and log events */
200: {
headers: {
[name: string]: unknown;
};
content: {
"text/event-stream": string;
};
};
};
};
health: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description TaskPilot API is healthy */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["HealthResponse"];
};
};
};
};
list_python_mirrors: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Python package mirrors */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["PythonMirrorResponse"][];
};
};
};
};
create_python_mirror: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["CreatePythonMirrorRequest"];
};
};
responses: {
/** @description Mirror created */
201: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["PythonMirrorResponse"];
};
};
/** @description Validation failed */
400: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
/** @description Mirror URL already exists */
409: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
get_python_mirror: {
parameters: {
query?: never;
header?: never;
path: {
/** @description Mirror identifier */
id: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Mirror detail */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["PythonMirrorResponse"];
};
};
/** @description Mirror not found */
404: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
update_python_mirror: {
parameters: {
query?: never;
header?: never;
path: {
/** @description Mirror identifier */
id: string;
};
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["UpdatePythonMirrorRequest"];
};
};
responses: {
/** @description Mirror updated */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["PythonMirrorResponse"];
};
};
/** @description Validation failed */
400: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
/** @description Mirror not found */
404: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
/** @description Mirror URL already exists */
409: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
delete_python_mirror: {
parameters: {
query?: never;
header?: never;
path: {
/** @description Mirror identifier */
id: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Mirror deleted */
204: {
headers: {
[name: string]: unknown;
};
content?: never;
};
/** @description Mirror not found */
404: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
set_default_python_mirror: {
parameters: {
query?: never;
header?: never;
path: {
/** @description Mirror identifier */
id: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Default mirror updated */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["PythonMirrorResponse"];
};
};
/** @description Mirror not found */
404: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
probe_python_venv: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["VenvProbeRequest"];
};
};
responses: {
/** @description Detected Python virtual environment */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["VenvProbeResponse"];
};
};
/** @description Invalid venv probe request */
400: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
create_python_venv: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["CreatePythonVenvRequest"];
};
};
responses: {
/** @description Created or reused project virtual environment */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["VenvProbeResponse"];
};
};
/** @description Project cannot create a virtual environment */
400: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
get_run: {
parameters: {
query?: never;
header?: never;
path: {
/** @description Run identifier */
run_id: number;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Task run detail */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["TaskRunResponse"];
};
};
/** @description Run not found */
404: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
cancel_run: {
parameters: {
query?: never;
header?: never;
path: {
/** @description Run identifier */
run_id: number;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Cancellation requested */
202: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["TaskRunResponse"];
};
};
/** @description Run not found */
404: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
/** @description Run is not cancellable */
409: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
get_run_logs: {
parameters: {
query?: {
offset?: number;
};
header?: never;
path: {
/** @description Run identifier */
run_id: number;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Incremental task run log */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["LogChunkResponse"];
};
};
/** @description Run not found */
404: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
download_run_logs: {
parameters: {
query?: never;
header?: never;
path: {
/** @description Run identifier */
run_id: number;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Plain text task log */
200: {
headers: {
[name: string]: unknown;
};
content: {
"text/plain": string;
};
};
/** @description Run or log not found */
404: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
list_schedule: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Next trigger time per enabled task */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ScheduledTaskResponse"][];
};
};
};
};
session: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Local API session token */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["SessionResponse"];
};
};
};
};
task_stats: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Dashboard counters */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["TaskStatsResponse"];
};
};
};
};
list_directories: {
parameters: {
query?: {
/** @description 绝对目录路径;留空表示列出盘符 */
path?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Subdirectories of the requested path, or the drive list */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["DirectoryListingResponse"];
};
};
/** @description The path is not an existing absolute directory */
400: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
list_tasks: {
parameters: {
query?: {
q?: string;
enabled?: boolean;
action_type?: components["schemas"]["TaskActionType"];
page?: number;
page_size?: number;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Paginated task list */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["TaskListResponse"];
};
};
};
};
create_task: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["CreateTaskRequest"];
};
};
responses: {
/** @description Task created */
201: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["TaskResponse"];
};
};
/** @description Validation failed */
400: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
/** @description Task ID already exists */
409: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
get_task: {
parameters: {
query?: never;
header?: never;
path: {
/** @description Stable task identifier */
id: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Task detail */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["TaskResponse"];
};
};
/** @description Task not found */
404: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
update_task: {
parameters: {
query?: never;
header?: never;
path: {
/** @description Stable task identifier */
id: string;
};
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["UpdateTaskRequest"];
};
};
responses: {
/** @description Task updated */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["TaskResponse"];
};
};
/** @description Validation failed */
400: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
/** @description Task not found */
404: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
delete_task: {
parameters: {
query?: never;
header?: never;
path: {
/** @description Stable task identifier */
id: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Task deleted */
204: {
headers: {
[name: string]: unknown;
};
content?: never;
};
/** @description Task not found */
404: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
disable_task: {
parameters: {
query?: never;
header?: never;
path: {
/** @description Stable task identifier */
id: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Task disabled */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["TaskResponse"];
};
};
/** @description Task not found */
404: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
enable_task: {
parameters: {
query?: never;
header?: never;
path: {
/** @description Stable task identifier */
id: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Task enabled */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["TaskResponse"];
};
};
/** @description Task not found */
404: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
run_task: {
parameters: {
query?: never;
header?: never;
path: {
/** @description Stable task identifier */
id: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Manual run accepted */
202: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["TaskRunResponse"];
};
};
/** @description Task not found */
404: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
/** @description Action executor not implemented */
422: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["ErrorResponse"];
};
};
};
};
list_task_runs: {
parameters: {
query?: {
page?: number;
page_size?: number;
status?: components["schemas"]["RunStatus"];
trigger?: components["schemas"]["RunTrigger"];
};
header?: never;
path: {
/** @description Stable task identifier */
id: string;
};
cookie?: never;
};
requestBody?: never;
responses: {
/** @description Task run history */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["TaskRunListResponse"];
};
};
};
};
}