# 停止后台任务

`POST` `/api/session/backgroundTasks/delete`

停止当前用户指定会话下的一次后台任务执行。只需传sessionId和列表中的taskId，类型由服务端识别。保留记录和已有结果；重复请求返回ALREADY_TERMINAL及当前状态，不会取消后续新运行。停止请求接受后可刷新后台任务列表查看状态。

## 请求参数

### 请求头参数

| 参数名 | 类型 | 必填 | 说明 |
|--------|------|------|------|
| X-Principal-Id | integer | 否 | 身份主体ID（Long类型）。通过API访问时必须传递以标识操作主体；通过页面访问时无需传递。可通过「身份主体」模块的创建接口获取。 |

### 请求体（JSON）

| 参数名 | 类型 | 必填 | 说明 |
|--------|------|------|------|
| sessionId | integer | 是 | 父会话ID，必须为正数 |
| taskId | string | 是 | 后台任务列表返回的具体执行ID，非空且最长64字符 |

## 响应

### 200

| 参数名 | 类型 | 说明 |
|--------|------|------|
| httpStatusCode | integer | HTTP状态码 |
| message | string | 响应消息 |
| data | BackgroundTaskTerminationVO | 响应数据 |
|     outcome | string | 操作结果：TERMINATION_REQUESTED 表示停止请求已接受；ALREADY_TERMINAL 表示任务已结束，无需重复停止 |
|     status | string | 当前任务状态：CREATED、PROCESSING、SUSPENDED、COMPLETED、FAILED、CANCELLED；接受停止不代表所有外部资源均已释放 |
| success | boolean | 是否成功 |
| requestId | string | 上游请求ID，用于跨系统链路追踪排查问题 |
| errCode | string | 上游错误码，前端可据此做特殊UI处理 |

### 400

| 参数名 | 类型 | 说明 |
|--------|------|------|
| httpStatusCode | integer | HTTP状态码 |
| message | string | 响应消息 |
| data | object | 响应数据 |
| success | boolean | 是否成功 |
| requestId | string | 上游请求ID，用于跨系统链路追踪排查问题 |
| errCode | string | 上游错误码，前端可据此做特殊UI处理 |

### 500

| 参数名 | 类型 | 说明 |
|--------|------|------|
| httpStatusCode | integer | HTTP状态码 |
| message | string | 响应消息 |
| data | object | 响应数据 |
| success | boolean | 是否成功 |
| requestId | string | 上游请求ID，用于跨系统链路追踪排查问题 |
| errCode | string | 上游错误码，前端可据此做特殊UI处理 |

