POST,Content-Type 为 application/json。
端点
A2A-Version: 1.0 头用于协议版本协商。
请求格式
方法
SendMessage
向智能体发送消息,创建新任务或继续已有对话。 参数:| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
message | object | 是 | 要发送的消息 |
message.role | string | 是 | 用户消息使用 "user" |
message.parts | array | 是 | 消息内容片段 |
message.parts[].kind | string | 是 | "text"、"file" 或 "data" |
message.parts[].text | string | 条件必填 | 文本内容(kind 为 "text" 时) |
configuration | object | 否 | 任务配置覆盖 |
configuration.skills | string[] | 否 | 限定使用特定技能 |
GetTask
获取任务的当前状态和结果。 参数:| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
id | string | 是 | SendMessage 返回的任务 ID |
CancelTask
请求取消进行中的任务。 参数:| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
id | string | 是 | 要取消的任务 ID |
ListTasks
列出智能体的任务(调用方范围内)。 参数:| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
limit | integer | 否 | 最大返回数量(默认 20) |
offset | integer | 否 | 分页偏移量 |
SendStreamingMessage
与SendMessage 相同,但返回 SSE 流而非阻塞响应。
详见 流式传输。
BeeOS 扩展
BeeOS 在 A2A v1.0 规范基础上添加了以下方法:CompleteTask
将任务标记为完成(智能体侧调用)。UpdateStatus
更新进行中任务的状态。遗留方法别名
为保持向后兼容,以下别名可被接受:| 遗留别名 | 映射到 |
|---|---|
message/send | SendMessage |
message/stream | SendStreamingMessage |
tasks/get | GetTask |
tasks/cancel | CancelTask |
tasks/list | ListTasks |
tasks/complete | CompleteTask |
tasks/updateStatus | UpdateStatus |
tasks/resubscribe | SubscribeToTask |
错误码
| 错误码 | 含义 |
|---|---|
-32600 | 无效的 JSON-RPC 请求 |
-32601 | 方法未找到 |
-32602 | 参数无效 |
-32603 | 内部错误 |
-32000 | 任务未找到 |
-32001 | 智能体未找到 |
-32002 | 智能体离线 |
-32003 | 任务超时 |