New260+ blocks and 240+ tools are now fully documented
DocumentationReferenceTool IntegrationsDeveloper Tools
Tool

A2A (Agent-to-Agent)

Send messages and manage tasks with remote AI agents using the A2A protocol

Interact with any A2A-compatible AI agent over the standardized Agent-to-Agent protocol. Use this integration to delegate tasks, poll their status, receive structured artifacts, and wire up webhook callbacks — all from inside a Zelaxy workflow.

Overview

PropertyValue
Typea2a
CategoryTool — AI Agents
AuthAPI Key (optional, passed per-request)

Operations

OperationTool IDDescription
Send Messagea2a_send_messageSend a message to an external A2A-compatible agent and receive its response, task ID, and any output artifacts
Get Taska2a_get_taskQuery the current status, state, and artifacts of an existing A2A task by ID
Cancel Taska2a_cancel_taskCancel a running A2A task and confirm whether cancellation succeeded
Get Agent Carda2a_get_agent_cardFetch the discovery document (Agent Card) for an A2A agent to inspect its capabilities and skills
Resubscribea2a_resubscribeReconnect to a streaming A2A task to retrieve new updates since the last poll
Set Push Notificationa2a_set_push_notificationRegister a webhook URL to receive push notifications whenever an A2A task changes state

Configuration

SettingTypeRequiredDescription
agentUrlstringYes (all operations)The base endpoint URL of the remote A2A agent (e.g. https://agent.example.com)
messagestringYes — a2a_send_messageThe text message to deliver to the agent
taskIdstringYes — a2a_get_task, a2a_cancel_task, a2a_set_push_notification, a2a_resubscribeID of the task to act on
contextIdstringNoContext ID for conversation continuity across multiple messages
datastringNoStructured data to include with the message as a JSON string
filesarrayNoFiles to attach to the message (each item: type, data, name, mime)
historyLengthnumberNo — a2a_get_taskNumber of conversation history messages to include in the response
webhookUrlstringYes — a2a_set_push_notificationHTTPS URL to receive task-state change notifications
tokenstringNo — a2a_set_push_notificationAuthentication token included in outgoing webhook requests for validation
apiKeystringNo (all operations)Secret. API key sent to the remote agent for authentication. Use {{A2A_API_KEY}} to reference an environment secret

Outputs

The fields returned depend on the operation selected.

Send Message (a2a_send_message)

FieldTypeDescription
contentstringText response content returned by the agent
taskIdstringUnique identifier of the created or continued task
contextIdstringGroups related tasks and messages for conversation continuity
statestringTask lifecycle state: working, completed, failed, canceled, rejected, input_required, or auth_required
artifactsarrayOutput artifacts produced by the agent (array of objects)
historyarrayConversation history (array of Message objects)

Get Task (a2a_get_task)

FieldTypeDescription
taskIdstringUnique task identifier
contextIdstringContext group identifier
statestringCurrent lifecycle state of the task
artifactsarrayTask output artifacts
historyarrayConversation history up to historyLength messages

Cancel Task (a2a_cancel_task)

FieldTypeDescription
cancelledbooleanWhether the cancellation was accepted by the agent
statestringTask state after the cancellation attempt

Get Agent Card (a2a_get_agent_card)

FieldTypeDescription
namestringAgent display name
descriptionstringAgent purpose and capabilities summary
urlstringService endpoint URL from the Agent Card
providerobjectCreator organization details (name, optional url)
capabilitiesobjectFeature support matrix (streaming, pushNotifications, extendedAgentCard)
skillsarrayAvailable operations exposed by the agent
versionstringA2A protocol version supported by the agent
defaultInputModesarrayDefault input content types accepted by the agent
defaultOutputModesarrayDefault output content types produced by the agent

Resubscribe (a2a_resubscribe)

FieldTypeDescription
taskIdstringTask identifier
contextIdstringContext group identifier
statestringCurrent lifecycle state
isRunningbooleanWhether the task is still executing
artifactsarrayTask output artifacts accumulated so far
historyarrayConversation history

Set Push Notification (a2a_set_push_notification)

FieldTypeDescription
urlstringThe registered HTTPS webhook URL
tokenstringAuthentication token for validating incoming webhook requests
successbooleanWhether the push notification subscription was registered successfully

Example

[Starter] → [A2A: Send Message] → [Agent: Summarize result]

Trigger the workflow with a user prompt stored in {{starter.input}}. Pass it to the A2A block with agentUrl set to https://research-agent.example.com and apiKey set to {{A2A_API_KEY}}. The a2a_send_message tool returns a taskId and content; feed {{a2a.content}} to a downstream Agent block that summarizes and formats the result for the end user.

Tips

  • Discover before you send. Run a2a_get_agent_card first to inspect an agent's capabilities and skills. If capabilities.streaming is false, the agent responds synchronously and you will receive content immediately on a2a_send_message.
  • Long-running tasks. If state comes back as working, use a2a_get_task (poll with a Wait block) or a2a_set_push_notification to receive an async callback when the task reaches completed or failed.
  • Continue conversations. Pass {{a2a.taskId}} and {{a2a.contextId}} back as taskId and contextId in a subsequent a2a_send_message call to continue the same conversational thread rather than starting a fresh task.
  • Auth is per-request. The apiKey is forwarded directly to the remote agent; store it as a Zelaxy environment secret and reference it as {{A2A_API_KEY}} rather than hard-coding it in the block config.
  • Graceful cancellation. Always check cancelled in the a2a_cancel_task output — some agents reject cancellation for tasks in terminal states (completed, failed), and the final state field tells you where the task actually ended up.