文档首页/ 数据智能平台 DataArts Platform/ API参考/ API/ 应用运行/ 流式获取异步应用运行的事件消息 - ListRunEvents
更新时间:2026-10-29 GMT+08:00
分享

流式获取异步应用运行的事件消息 - ListRunEvents

功能介绍

当用户通过异步运行应用接口以异步流式(设置response_mode为streaming)运行应用时,可通过该接口以流式(SSE:响应的Content-type为text/event-stream)的方式获取应用执行过程的事件消息,其中路径参数里的run_id为异步运行应用接口返回的run_id。

SSE内容参考如下:

data: {"message_id": "1cc7e8eb-4e63-46f4-af4a-b97459eec420", "run_id": "1cc7e8eb-4e63-46f4-af4a-b97459eec420", "is_finished": false, "role": "user", "event": "message", "session_id": "9f98582f-4f37-491f-b04b-db88bb988f39", "type": "text", "is_answer": false, "content": "hello", "inputs": "{\"query\": \"翻译“我们居住在地球村”\"}"}

data: {"message_id": "1cc7e8eb-4e63-46f4-af4a-b97459eec420", "run_id": "1cc7e8eb-4e63-46f4-af4a-b97459eec420", "is_finished": false, "role": "assistant", "version": "0.0", "event": "workflow_started", "session_id": "9f98582f-4f37-491f-b04b-db88bb988f39", "data": {"inputs": {"query": "翻译“我们居住在地球村”", "sys.query": "hello"}, "create_date": "2026-10-08T10:46:25Z"}}

data: {"message_id": "1cc7e8eb-4e63-46f4-af4a-b97459eec420", "run_id": "1cc7e8eb-4e63-46f4-af4a-b97459eec420", "is_finished": false, "role": "assistant", "node_run_id": "d49eb563-0ad1-4c25-ad5d-409111dfc9f0", "event": "node_started", "session_id": "9f98582f-4f37-491f-b04b-db88bb988f39", "data": {"node_id": "dec79e19-7a05-47b5-be9c-49fad972e05f", "node_type": "START", "node_name": "开始", "seq_id": 1, "inputs": {"sys.query": "hello", "sys.files": null}, "create_date": "2026-10-08T10:46:25Z"}}

调用方法

请参见如何调用API。

授权信息

账号根用户具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备如下身份策略权限,更多的权限说明请参见权限和授权项。

授权项

访问级别

资源类型(*为必须)

条件键

别名

依赖的授权项

DataArtsPlatform:application:getRunEvents

Read

-

-

-

-

URI

GET /v1/{project_id}/applications/{application_id}/runs/{run_id}/events

表1 路径参数

参数

是否必选

参数类型

描述

project_id

是

String

参数解释:

项目ID。

获取方法请参见获取项目ID。

约束限制:

不涉及。

取值范围:

小写字母和数字组成的32位十六进制字符,例如:ff8080817d30ff7b017d3213ba600001。

默认取值:

不涉及。

application_id

是

String

参数解释:

应用ID,应用的唯一标识,可以通过应用开发控制台或应用查询接口获取。

约束限制:

不涉及。

取值范围:

标准的 UUID 格式,即由连字符(-)分隔的 32 位十六进制字符,格式为 8-4-4-4-12,例如:fc078dfc-b2da-4052-8aad-4c67c4302264。

默认取值:

不涉及。

run_id

是

String

参数解释:

运行ID,用于唯一标识一次运行,通过运行应用相关接口生成并返回。

约束限制:

不涉及。

取值范围:

标准的 UUID 格式,即由连字符(-)分隔的 32 位十六进制字符,格式为 8-4-4-4-12,例如:59e2e4ed-ad2c-44ec-a52f-5ba8295e68eb。

默认取值:

不涉及。

表2 Query参数

参数

是否必选

参数类型

描述

stop_mode

否

String

参数解释:

结束模式,用于指定本次SSE请求什么时候结束。

说明:不管哪种模式,当本次请求在由timeout指定的时间内未收到运行消息,则会超时结束SSE请求。

约束限制:

不涉及。

取值范围:

  • NEVER:不会主动结束请求。

  • INTERACT:当收到交互消息时结束请求。

  • FINISHED:当收到应用运行结束消息时结束请求。

  • BOTH:当收到交互或运行结束消息时结束请求。

默认取值:

BOTH。

timeout

否

Integer

参数解释:

超时时间,单位秒,在该时间内无新的消息,则结束SSE。

约束限制:

不涉及。

取值范围:

0-30。

默认取值:

10。

next_key

否

String

参数解释:

下一条信息的开始标记,由服务端返回:messages接口里的next_key或events消息里的ID,用于指定从哪条消息开始获取消息。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

X-Workspace-Id

是

String

参数解释:

工作空间ID。

获取方法请参见获取项目ID,例如:6280b8733aea43a2a0799c55aeeb0e68。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

响应参数

状态码:200

表4 响应Body参数

参数

参数类型

描述

id

String

参数解释:

当前消息的消息ID。

取值范围:

不涉及。

event

String

参数解释:

事件类型。

取值范围:

  • workflow_started:应用开始执行。

  • workflow_finished:应用执行结束。

  • node_started:节点开始执行。

  • node_finished:节点执行结束。

  • loop_started:循环开始执行。

  • loop_finished:循环执行结束。

  • llm_started:大模型开始执行。

  • llm_finished:大模型执行结束。

  • tool_started:工具开始执行。

  • tool_finished:工具执行结束。

  • message:消息。

type

String

参数解释:

当event为message时,消息的类型,即content里内容是什么。

取值范围:

  • text: 纯文本消息。

  • tool: 工具运行信息。

  • interact:交互问答。

  • params:参数。

  • sub_workflow:子工作流的运行消息。

  • status:状态的消息,比如节点或任务推理消息的开始,结束等。

content

String

参数解释:

事件消息的内容。

取值范围:

不涉及。

data

Object

参数解释:

非消息事件的数据,通常为节点或应用运行状态信息,如节点开/结束时的状态,可能包括状态、输入输出、起止时间等。

取值范围:

不涉及。

is_finished

Boolean

参数解释:

标记是否运行结束。

取值范围:

  • true:运行结束。

  • false:运行未结束。

message_id

String

参数解释:

运行消息ID,由系统生成。应用的一次运行会生成一个消息ID。因应用可能涉及交互问答,同一次运行可能涉及多次交互,因此会产生不同的消息ID。

取值范围:

标准的 UUID 格式,即由连字符(-)分隔的 32 位十六进制字符,格式为 8-4-4-4-12,例如:2c1f93a2-cfc3-4799-abae-bda8edf36d7f。

node_parent_run_id

String

参数解释:

节点的父运行ID。

取值范围:

标准的 UUID 格式,即由连字符(-)分隔的 32 位十六进制字符,格式为 8-4-4-4-12,例如:451f93a2-cfc3-4799-abae-bda8edf36d33。

node_run_id

String

参数解释:

节点的运行ID。

取值范围:

标准的 UUID 格式,即由连字符(-)分隔的 32 位十六进制字符,格式为 8-4-4-4-12,例如:42a1f931-cfc3-4799-abae-bda8edf36dfa。

parent_run_id

String

参数解释:

父运行ID,当前运行的父运行ID的唯一标识,通常出现在子应用中。

取值范围:

标准的 UUID 格式,即由连字符(-)分隔的 32 位十六进制字符,格式为 8-4-4-4-12,例如:67s1f93a-cfc3-4799-abae-bda8edf36d9f。

role

String

参数解释:

角色。

取值范围:

  • user:用户。

  • assistant:助手。

  • system:系统。

run_id

String

参数解释:

运行ID,用于唯一标识一次运行。

取值范围:

标准的 UUID 格式,即由连字符(-)分隔的 32 位十六进制字符,格式为 8-4-4-4-12,例如:2c1f93a2-cfc3-4799-abae-bda8edf36d7f。

session_id

String

参数解释:

会话ID,单次会话的唯一标识。

取值范围:

标准的 UUID 格式,即由连字符(-)分隔的 32 位十六进制字符,格式为 8-4-4-4-12,例如:2350bb6e-7f05-40d6-b65f-2cf0d3fde0a2。

version

String

参数解释:

当前应用运行的应用版本。

取值范围:

不涉及。

请求示例

流式获取应用执行的事件消息

GET https://{Endpoint}/v1/{project_id}/applications/{application_id}/runs/{run_id}/events

响应示例

状态码:200

流式获取应用执行的事件消息

{
  "event" : "node_started",
  "run_id" : "8ac0dfc9-5535-4a87-9c20-43e41cc871d3",
  "message_id" : "8ac0dfc9-5535-4a87-9c20-43e41cc871d3",
  "session_id" : "7917dbae-3cd6-455d-a6cd-b19c9b8099ad",
  "role" : "assistant",
  "node_run_id" : "551d112b-8252-472a-abaf-99ac33702028",
  "id" : "MTc3NzEwNDc5NTc1Mi0x",
  "is_finished" : false,
  "data" : {
    "node_id" : "dc6084c7-1bb8-4637-92fa-718c949793db",
    "node_type" : "VARIABLE",
    "node_name" : "变量",
    "seq_id" : 2,
    "inputs" : {
      "var1" : "hello zhangsan, how are you?"
    },
    "create_date" : "2026-10-08T10:46:25Z"
  }
}

状态码

状态码

描述

200

流式获取应用运行事件消息成功响应。

错误码

请参见错误码。

相关文档