# 查询运行问答消息

`GET` `/api/agent/run/messages`

根据请求ID一次性返回单次运行的用户输入（userInput）、智能体最终回复文本（assistantReply）和执行起止时间，无需再经「查询运行详情取assistantMessageId、查询消息部件、自行过滤拼接」三步流程。startedAt和completedAt为Unix毫秒时间戳；尚未开始时startedAt可能为空，未结束时completedAt可能为空，记录未提供的时间也为空，空时间字段在响应中省略。调用方应以status判断运行是否结束：COMPLETED、FAILED、CANCELLED为终态，CREATED、PROCESSING、SUSPENDED为非终态，不能仅凭completedAt是否有值判断。assistantReply取助手消息最后一个TEXT部件的完整文本，运行未结束时可能为空。若需要工具调用、推理思考等完整执行轨迹，请改用「会话管理」模块的消息部件查询接口（sessionListMessageParts）。

## 请求参数

### 请求头参数

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

### Query 参数

| 参数名 | 类型 | 必填 | 说明 |
|--------|------|------|------|
| requestId | string | 是 | 运行记录的请求ID |

## 响应

### 200

| 参数名 | 类型 | 说明 |
|--------|------|------|
| httpStatusCode | integer | HTTP状态码 |
| message | string | 响应消息 |
| data | AgentRunMessagesVO | 响应数据 |
|     requestId | string | 本次运行的请求ID |
|     sessionId | integer | 本次运行所属的会话ID |
|     status | string | 运行状态，可选值：CREATED（已创建）、PROCESSING（执行中）、SUSPENDED（已挂起）、COMPLETED（已完成）、FAILED（已失败）、CANCELLED（已取消）。其中 COMPLETED、FAILED、CANCELLED 为终结状态，CREATED、PROCESSING、SUSPENDED 为非终结状态 |
|     startedAt | integer | 运行开始执行时间，Unix毫秒时间戳；尚未开始或记录未提供时为空，响应中省略该字段 |
|     completedAt | integer | 运行结束时间，Unix毫秒时间戳，涵盖成功、失败和取消；未结束或记录未提供时为空，响应中省略该字段。应以status判断是否结束：COMPLETED、FAILED、CANCELLED为终态，CREATED、PROCESSING、SUSPENDED为非终态 |
|     userMessageId | integer | 本次运行对应的用户消息ID |
|     userInput | string | 用户本次输入的文本内容，已剥离附件元数据块，仅保留用户原始提问文本 |
|     assistantMessageId | integer | 本次运行产生的助手消息ID，运行尚未产生助手消息时为空 |
|     assistantMessageStatus | string | 助手消息状态，可选值：CREATED（已创建）、PROCESSING（执行中）、COMPLETED（已完成）、FAILED（已失败）、CANCELLED（已取消） |
|     assistantReply | string | 智能体最终回复文本，取助手消息最后一个 TEXT 部件的完整内容。运行未结束时该字段可能为 null，调用方应先结合 status 判断运行是否已终结（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处理 |

