SendNapalStreamMessage - 发送NAPal流式消息

更新时间:
复制 MD 格式

A2A流式消息发送

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

调试

授权信息

当前API暂无授权信息透出。

请求语法

POST /open/a2a/message/stream HTTP/1.1

请求参数

名称

类型

必填

描述

示例值

Message

object

消息体对象,包含用户输入内容及会话上下文信息

MessageId

string

消息 ID,未传则服务端自动生成

m_msijl2sv_pcfge8r7l

Role

string

消息角色

user

Parts

array<object>

消息内容分片列表,支持多个 Part

object

消息内容分片对象

Text

string

文本内容。用户输入的自然语言指令,如诊断请求、问题咨询等

诊断一下这个实例ngw-xxx

Raw

string

原始内容,用于传递非文本数据

cmVzZXJ2ZWQ=

Url

string

文件 URL,用于传递文件类内容

https://example.com/file.txt

MediaType

string

媒体类型

application/json

Filename

string

文件名

report.txt

Data

any

结构化数据,用于传递 JSON 格式的结构化内容

{"key":"value"}

ContextId

string

会话上下文 ID。首次对话不传,服务端会创建新会话;多轮对话需传入上一次响应中的 contextId 以保持上下文连续

context-xxx

TaskId

string

任务 ID。续聊场景传入上一次任务的 ID

task-xxx

ReferenceTaskIds

array

引用的历史任务 ID 列表,用于上下文关联

string

保留字段,当前接口暂不返回。

task-reserved

Metadata

object

扩展元数据,用于传递额外上下文信息

{}

Extensions

array

扩展信息列表

string

扩展信息

trace

Metadata

object

请求附加信息

string

节点元数据

{"tenantId":"t-10001"}

Configuration

object

请求配置对象

AcceptedOutputModes

array

接受的输出模式。默认 ["text/event-stream"],表示接受 SSE 流式响应

string

输出模式

text/event-stream

HistoryLength

integer

历史消息长度。控制多轮对话时携带的历史消息数量,默认 20

20

ReturnImmediately

boolean

是否立即返回。false(默认)表示流式返回,true 表示立即返回任务 ID 后异步处理

false

返回参数

名称

类型

描述

示例值

object

RequestId

string

请求 ID

A7F0D6EC-E19E-58AC-AC9F-08036763960F

Task

object

任务信息

Id

string

任务 ID

task-38cZ**MAVKu

ContextId

string

会话上下文 ID。用于多轮对话保持上下文连续

context-07b0**bcc2

Status

object

任务状态对象

State

string

任务状态。可选值:TASK_STATE_SUBMITTED(已提交)、TASK_STATE_WORKING(执行中)、TASK_STATE_COMPLETED(已完成)、TASK_STATE_FAILED(已失败)

TASK_STATE_SUBMITTED

Message

object

A2A 协议定义的消息对象,包含发送方角色、一个或多个内容分片,以及可选的会话和任务上下文。作为顶层返回字段时,表示智能体直接回复,与 Task、TaskStatusUpdate、TaskArtifactUpdate 互斥;返回后流立即关闭。作为 Status.Message 时,表示与任务状态关联的说明消息。当前接口暂不返回顶层 Message,仅用于协议兼容。

MessageId

string

消息 ID

message-fd6e**9949

Role

string

消息角色

agent

Parts

array<object>

消息内容分片列表

object

消息内容分片对象

Text

string

文本内容。用户输入的自然语言指令,如诊断请求、问题咨询等

当前实例运行正常。

Raw

string

保留字段,当前接口暂不返回。

cmVzZXJ2ZWQ=

Url

string

保留字段,当前接口暂不返回。

https://example.com/reserved.bin

Data

any

保留字段,当前接口暂不返回。

{}

MediaType

string

保留字段,当前接口暂不返回。

application/octet-stream

Filename

string

保留字段,当前接口暂不返回。

reserved.bin

Timestamp

string

状态时间戳(ISO 8601 格式)

2026-08-07T06:08:10Z

Artifacts

array<object>

任务产出物列表

array<object>

任务产出物对象

ArtifactId

string

产出物唯一标识

output

Name

string

产出物名称

巡检报告

Description

string

产出物描述

实例健康巡检结果

Parts

array<object>

内容分片列表

object

内容分片对象

Text

string

报告文本片段

诊断结果

Raw

string

保留字段,当前接口暂不返回。

cmVzZXJ2ZWQ=

Url

string

保留字段,当前接口暂不返回。

https://example.com/reserved.bin

Data

any

保留字段,当前接口暂不返回。

{}

MediaType

string

保留字段,当前接口暂不返回。

application/octet-stream

Filename

string

保留字段,当前接口暂不返回。

reserved.bin

Metadata

object

保留字段,当前接口暂不返回。

{}

Extensions

array

保留字段,当前接口暂不返回。

string

保留字段,当前接口暂不返回。

reserved

History

array<object>

历史消息列表

array<object>

历史消息

MessageId

string

消息 ID

message-fd6e**9949

Role

string

消息角色

user

Parts

array<object>

消息内容分片列表

object

消息内容分片对象

Text

string

文本内容

诊断一下这个实例ngw-xxx

Raw

string

保留字段,当前接口暂不返回。

cmVzZXJ2ZWQ=

Url

string

保留字段,当前接口暂不返回。

https://example.com/reserved.bin

Data

any

保留字段,当前接口暂不返回。

{}

MediaType

string

保留字段,当前接口暂不返回。

application/octet-stream

Filename

string

保留字段,当前接口暂不返回。

reserved.bin

ContextId

string

会话上下文 ID

context-07b0**bcc2

TaskId

string

任务 ID

task-38cZ**MAVKu

ReferenceTaskIds

array

保留字段,当前接口暂不返回。

string

保留字段,当前接口暂不返回。

task-reserved

Metadata

object

保留字段,当前接口暂不返回。

{}

Extensions

array

保留字段,当前接口暂不返回。

string

保留字段,当前接口暂不返回。

reserved

Metadata

object

扩展元数据,用于传递额外上下文信息

{"usage":"{totalTokens=327672}"}

Message

object

该字段与 Task、TaskStatusUpdate、TaskArtifactUpdate 互斥;返回该字段时不创建任务,流在发送一条 Message 后关闭。当前接口暂不返回该类型,仅用于预留以协议兼容。

MessageId

string

消息 ID

message-fd6e**9949

Role

string

消息角色

agent

Parts

array<object>

消息内容分片列表

object

消息内容分片对象

Text

string

文本内容

当前实例运行正常。

Raw

string

保留字段,当前接口暂不返回。

cmVzZXJ2ZWQ=

Url

string

保留字段,当前接口暂不返回。

https://example.com/reserved.bin

Data

any

保留字段,当前接口暂不返回。

{}

MediaType

string

保留字段,当前接口暂不返回。

application/octet-stream

Filename

string

保留字段,当前接口暂不返回。

reserved.bin

ContextId

string

会话上下文 ID

context-07b0**bcc2

TaskId

string

保留字段。直返 Message 不创建任务,因此该字段为空;当前接口暂不返回顶层 Message。

task-reserved

ReferenceTaskIds

array

保留字段,当前接口暂不返回。

string

保留字段,当前接口暂不返回。

task-reserved

Metadata

object

保留字段,当前接口暂不返回。

{}

Extensions

array

保留字段,当前接口暂不返回。

string

保留字段,当前接口暂不返回。

reserved

TaskStatusUpdate

object

任务状态更新对象

TaskId

string

任务 ID

task-38cZ**MAVKu

ContextId

string

会话上下文 ID

context-07b0**bcc2

Status

object

任务状态对象

State

string

任务状态。可选值:TASK_STATE_WORKING(执行中)、TASK_STATE_COMPLETED(已完成)、TASK_STATE_FAILED(已失败)、TASK_STATE_CANCELED(已取消)

TASK_STATE_WORKING

Message

object

消息体对象

MessageId

string

消息 ID

message-fd6e**9949

Role

string

消息角色

user

Parts

array<object>

消息内容分片列表

object

消息内容分片对象

Text

string

文本内容

查询流量

Raw

string

保留字段,当前接口暂不返回。

cmVzZXJ2ZWQ=

Url

string

保留字段,当前接口暂不返回。

https://example.com/reserved.bin

Data

any

保留字段,当前接口暂不返回。

{}

MediaType

string

保留字段,当前接口暂不返回。

application/octet-stream

Filename

string

保留字段,当前接口暂不返回。

reserved.bin

Timestamp

string

状态时间戳(ISO 8601 格式)

2026-08-07T06:08:30Z

Final

boolean

是否为终态事件。true 表示任务已结束(完成或失败),此后不再推送事件

false

Metadata

object

元数据对象,包含步骤执行信息

Step

object

步骤执行信息

CostTime

integer

步骤执行耗时,单位毫秒 ms。

203

Id

string

步骤唯一标识

30688

IsError

boolean

步骤是否执行出错

false

Name

string

步骤名称

load_skill

Params

any

步骤输入参数

{"skill_id":"239"}

Result

any

步骤执行结果

success

RetryCount

integer

重试次数

1

UiContent

string

前端展示内容

load_skill

TaskArtifactUpdate

object

任务产出更新对象

TaskId

string

任务 ID

task-38cZ**MAVKu

ContextId

string

会话上下文 ID

context-07b0**bcc2

Artifact

object

产出物对象

ArtifactId

string

产出物唯一标识

output

Name

string

产出物名称

巡检报告

Description

string

产出物描述

巡检详细报告

Parts

array<object>

内容分片列表

object

内容分片对象

Text

string

报告文本片段

实例状态正常

Raw

string

保留字段,当前接口暂不返回。

cmVzZXJ2ZWQ=

Url

string

保留字段,当前接口暂不返回。

https://example.com/reserved.bin

Data

any

保留字段,当前接口暂不返回。

{}

MediaType

string

保留字段,当前接口暂不返回。

application/octet-stream

Filename

string

保留字段,当前接口暂不返回。

reserved.bin

Metadata

object

保留字段,当前接口暂不返回。

{}

Extensions

array

保留字段,当前接口暂不返回。

string

保留字段,当前接口暂不返回。

reserved

Append

boolean

是否为追加内容。true 表示本次 Text 拼接到已有报告内容末尾;false 表示覆盖已有内容

true

LastChunk

boolean

是否为最后一块。true 表示报告内容已完整推送完毕,此后不再有新的事件

false

示例

正常返回示例

JSON格式

{
  "RequestId": "A7F0D6EC-E19E-58AC-AC9F-08036763960F",
  "Task": {
    "Id": "task-38cZ**MAVKu",
    "ContextId": "context-07b0**bcc2",
    "Status": {
      "State": "TASK_STATE_SUBMITTED",
      "Message": {
        "MessageId": "message-fd6e**9949",
        "Role": "agent",
        "Parts": [
          {
            "Text": "当前实例运行正常。",
            "Raw": "cmVzZXJ2ZWQ=",
            "Url": "https://example.com/reserved.bin",
            "Data": "{}",
            "MediaType": "application/octet-stream",
            "Filename": "reserved.bin"
          }
        ]
      },
      "Timestamp": "2026-08-07T06:08:10Z"
    },
    "Artifacts": [
      {
        "ArtifactId": "output",
        "Name": "巡检报告",
        "Description": "实例健康巡检结果",
        "Parts": [
          {
            "Text": "诊断结果",
            "Raw": "cmVzZXJ2ZWQ=",
            "Url": "https://example.com/reserved.bin",
            "Data": "{}",
            "MediaType": "application/octet-stream",
            "Filename": "reserved.bin"
          }
        ],
        "Metadata": {},
        "Extensions": [
          "reserved"
        ]
      }
    ],
    "History": [
      {
        "MessageId": "message-fd6e**9949",
        "Role": "user",
        "Parts": [
          {
            "Text": "诊断一下这个实例ngw-xxx",
            "Raw": "cmVzZXJ2ZWQ=",
            "Url": "https://example.com/reserved.bin",
            "Data": "{}",
            "MediaType": "application/octet-stream",
            "Filename": "reserved.bin"
          }
        ],
        "ContextId": "context-07b0**bcc2",
        "TaskId": "task-38cZ**MAVKu",
        "ReferenceTaskIds": [
          "task-reserved"
        ],
        "Metadata": {},
        "Extensions": [
          "reserved"
        ]
      }
    ],
    "Metadata": {
      "usage": "{totalTokens=327672}"
    }
  },
  "Message": {
    "MessageId": "message-fd6e**9949",
    "Role": "agent",
    "Parts": [
      {
        "Text": "当前实例运行正常。",
        "Raw": "cmVzZXJ2ZWQ=",
        "Url": "https://example.com/reserved.bin",
        "Data": "{}",
        "MediaType": "application/octet-stream",
        "Filename": "reserved.bin"
      }
    ],
    "ContextId": "context-07b0**bcc2",
    "TaskId": "task-reserved",
    "ReferenceTaskIds": [
      "task-reserved"
    ],
    "Metadata": {},
    "Extensions": [
      "reserved"
    ]
  },
  "TaskStatusUpdate": {
    "TaskId": "task-38cZ**MAVKu",
    "ContextId": "context-07b0**bcc2",
    "Status": {
      "State": "TASK_STATE_WORKING",
      "Message": {
        "MessageId": "message-fd6e**9949",
        "Role": "user",
        "Parts": [
          {
            "Text": "查询流量",
            "Raw": "cmVzZXJ2ZWQ=",
            "Url": "https://example.com/reserved.bin",
            "Data": "{}",
            "MediaType": "application/octet-stream",
            "Filename": "reserved.bin"
          }
        ]
      },
      "Timestamp": "2026-08-07T06:08:30Z"
    },
    "Final": true,
    "Metadata": {
      "Step": {
        "CostTime": 203,
        "Id": "30688",
        "IsError": false,
        "Name": "load_skill",
        "Params": "{\"skill_id\":\"239\"}",
        "Result": "success",
        "RetryCount": 1,
        "UiContent": "load_skill"
      }
    }
  },
  "TaskArtifactUpdate": {
    "TaskId": "task-38cZ**MAVKu",
    "ContextId": "context-07b0**bcc2",
    "Artifact": {
      "ArtifactId": "output",
      "Name": "巡检报告",
      "Description": "巡检详细报告",
      "Parts": [
        {
          "Text": "实例状态正常",
          "Raw": "cmVzZXJ2ZWQ=",
          "Url": "https://example.com/reserved.bin",
          "Data": "{}",
          "MediaType": "application/octet-stream",
          "Filename": "reserved.bin"
        }
      ],
      "Metadata": {},
      "Extensions": [
        "reserved"
      ]
    },
    "Append": true,
    "LastChunk": false
  }
}

错误码

HTTP status code

错误码

错误信息

描述

400 IllegalParam.IllegalParameter The parameter is illegal.
403 OperationDenied.AliUid The specified AliUid is not authorized to operate this resource. 指定的AliUid无权操作该资源。

访问错误中心查看更多错误码。

变更历史

更多信息,参考变更详情