向已有会话发送用户Prompt并流式返回Agent响应。
接口说明
请求说明
该 API 用于向指定的会话 ID 发送用户的 Prompt,并以 SSE(Server-Sent Events)流式方式接收来自 Agent 的响应。
响应可能包括消息分片、思考过程、工具调用状态更新等信息。
如果指定的会话不存在,将通过 SSE 错误帧返回 400 错误。
stopReason字段指示了 Agent 停止本轮对话的原因。支持多种类型的内容块作为 Prompt 输入,如文本、OSS 文件下载链接等。
可选地提供额外元信息
Meta来传递更多上下文给服务端。返回的内容符合开源协议 Agent Client Protocol (ACP) 的规范,具体可以参考:https://agentclientprotocol.com
** 请确保在使用该接口前,已充分了解 Data Agent 产品的收费方式和价格 ** :https://help.aliyun.com/zh/dataworks/dataworks-data-agent-agent-billing
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
调试
授权信息
请求语法
POST HTTP/1.1
请求参数
|
名称 |
类型 |
必填 |
描述 |
示例值 |
| Jsonrpc |
string |
否 |
JSON-RPC 版本,固定 2.0 |
2.0 |
| Id |
string |
否 |
请求方传入的 id,原样回显 |
1021418411 |
| Params |
object |
否 |
业务参数 |
|
| SessionId |
string |
否 |
目标会话 ID,不存在会返回 SSE error 帧 |
sess_0f12abc34 |
| Prompt |
array<object> |
否 |
用户消息内容块数组,参考:https://agentclientprotocol.com/protocol/content |
|
|
array<object> |
否 |
|||
| Type |
string |
否 |
内容块类型 |
目前支持:text,resource_link |
| Text |
string |
否 |
文本内容 |
Type=text下生效,示例值:近 7 天销售额 |
| Uri |
string |
否 |
文件的 URI。 |
Type= resource_link下生效,示例值:oss://${bucket}/${ossKey} |
| Name |
string |
否 |
文件名 |
Type= resource_link下生效,示例值:xxx.csv |
| MimeType |
string |
否 |
文件 MIME 类型 |
Type= resource_link下生效,示例值:text/csv |
| Size |
integer |
否 |
文件的大小,单位:byte |
Type= resource_link下生效,示例值:1231231 |
| Title |
string |
否 |
文件名称 |
Type= resource_link下生效,示例值:销售订单明细.csv |
| Description |
string |
否 |
文件描述 |
Type= resource_link下生效,示例值:销售订单明细.csv |
| Meta |
object |
否 |
DataWorks 扩展的 Prompt 元信息 |
|
| Hide |
boolean |
否 |
该 Prompt 是否对用户隐藏不显示。比如在 Chat 对话框中用户提问了一句话:近 7 天的销售金额,然后在调用 OpenAPI 之前,调用系统通过 RAG 召回了一些业务领域知识,需要补充在 Agent 上下文里面,但是又不想回显给用户看,此时可以把该值设置成 true |
true or false |
| Meta |
object |
否 |
扩展元信息 |
|
| Context |
any |
否 |
Map 类型,对于自定义 Agent 场景下,有些占位符参数可以通过该值进行替换 |
{ "key1": "value1", "key2": "value2" } |
返回参数
|
名称 |
类型 |
描述 |
示例值 |
|
object |
|||
| RequestId |
string |
Id of the request |
D5D70885-7CC7-594A-80C7-2EF1B00FFB4B |
| Timestamp |
integer |
时间戳。 |
1747447032 |
| Jsonrpc |
string |
JSON-RPC 版本,固定 2.0 |
2.0 |
| Id |
string |
请求方传入的 id,原样回显 |
631478864897630XXXX |
| Result |
any |
SSE 的帧结果集,返回的内容符合开源协议 Agent Client Protocol (ACP) 的规范,具体可以参考:https://agentclientprotocol.com/protocol/prompt-turn |
{"stopReason":"end_turn"} |
| Error |
any |
SSE 的帧信息错误提示,返回的内容符合开源协议 Agent Client Protocol (ACP) 的规范,具体可以参考:https://agentclientprotocol.com/protocol/prompt-turn |
{"code": 400, "errorCode": "0x50000000001", "message": "not exist session", "data": null} |
| Method |
string |
SSE 的 method,返回的内容符合开源协议 Agent Client Protocol (ACP) 的规范,具体可以参考:https://agentclientprotocol.com/protocol/prompt-turn |
session/update |
| Params |
any |
SSE 的 params,返回的内容符合开源协议 Agent Client Protocol (ACP) 的规范,具体可以参考:https://agentclientprotocol.com/protocol/prompt-turn |
{"sessionId":"af4f5ef8-e8f5-481c-ad1f-94886c6c0aed","update":{"sessionUpdate":"agent_message_chunk","content":{"type":"text","text":"hello world"}}} |
示例
正常返回示例
JSON格式
{
"RequestId": "D5D70885-7CC7-594A-80C7-2EF1B00FFB4B",
"Timestamp": 1747447032,
"Jsonrpc": "2.0",
"Id": "631478864897630XXXX",
"Result": "{\"stopReason\":\"end_turn\"}\n",
"Error": "{\"code\": 400, \"errorCode\": \"0x50000000001\", \"message\": \"not exist session\", \"data\": null}",
"Method": "session/update",
"Params": "{\"sessionId\":\"af4f5ef8-e8f5-481c-ad1f-94886c6c0aed\",\"update\":{\"sessionUpdate\":\"agent_message_chunk\",\"content\":{\"type\":\"text\",\"text\":\"hello world\"}}}"
}
错误码
访问错误中心查看更多错误码。
变更历史
更多信息,参考变更详情。