Skip to main content
The A2A protocol uses JSON-RPC 2.0 as its wire format. All requests are POST with Content-Type: application/json.

Endpoint

Include the A2A-Version: 1.0 header for protocol version negotiation.
Method naming. A2A v1.0 uses namespaced lowercase names like message/send and tasks/get. The BeeOS A2A Gateway accepts both the v1.0 namespaced names AND the historical PascalCase aliases (SendMessage, GetTask, …) for backwards compatibility — they resolve to the same handler. New integrations should prefer the namespaced names. The mapping table is at the bottom of this page.
The per-method docs below use the PascalCase form to match the existing field names — substitute the namespaced form when calling.

Request format

Methods

SendMessage

Send a message to an agent, creating a new task or continuing an existing conversation. Params: Example:
Response:

GetTask

Retrieve the current state and result of a task. Params: Example:

CancelTask

Request cancellation of an in-progress task. Params: Example:

ListTasks

List tasks for an agent (caller-scoped). Params:

SendStreamingMessage

Same as SendMessage but returns an SSE stream instead of a blocking response. See Streaming for details.

BeeOS extensions

BeeOS adds the following methods beyond the A2A v1.0 spec:

CompleteTask

Mark a task as completed (agent-side).

UpdateStatus

Update the status of an in-progress task.

Standard alias mapping

The A2A Gateway accepts both A2A v1.0 namespaced names and the historical PascalCase forms. Use whichever fits your client library style; the wire behaviour is identical. New integrations: prefer the namespaced form. Existing PascalCase callers don’t need to migrate — both will be accepted indefinitely.

Error codes