A2A Dispatch
Dispatch and agent management.
The A2A dispatch API lets you list task dispatches sent to external agents, manage registered A2A peers, and refresh agent cards from remote sources. It backs the A2A Dispatches view in the Rensei dashboard.
A2A dispatch endpoints currently require cookie session authentication (browser-based org access). API key bearer auth for programmatic A2A dispatch is on the roadmap.
Dispatch history
GET /api/a2a/dispatchesLists A2A task dispatches for the authenticated org. Includes both explicit dispatches (user-initiated) and transparent dispatches (triggered by workflow nodes).
Query parameters
| Parameter | Description |
|---|---|
agentId | Filter by target agent ID |
status | Filter by dispatch status: pending, running, completed, failed |
from | ISO 8601 start time |
to | ISO 8601 end time |
limit | Maximum results (default: 50) |
cursor | Pagination cursor |
Response
{
"dispatches": [
{
"dispatchId": "dispatch_01abc...",
"agentId": "agent_01abc...",
"agentName": "Code Review Agent",
"taskId": "task_01abc...",
"status": "completed",
"dispatchType": "explicit",
"input": {
"text": "Review PR #42 for security issues."
},
"output": {
"text": "Found 2 potential issues: ..."
},
"dispatchedAt": "2026-06-02T12:00:00Z",
"completedAt": "2026-06-02T12:03:00Z",
"costTokens": 1240
}
],
"nextCursor": "cursor_abc..."
}| Field | Description |
|---|---|
dispatchType | explicit - user or workflow initiated; transparent - triggered by A2A routing without explicit user action |
taskId | The A2A protocol task identifier returned by the remote agent |
Agent registry
List agents
GET /api/a2a/agentsReturns all A2A agents registered with the authenticated org.
Response
{
"agents": [
{
"id": "agent_01abc...",
"name": "Code Review Agent",
"url": "https://review-agent.example.com",
"status": "healthy",
"lastSeenAt": "2026-06-02T11:55:00Z",
"skills": [
{
"id": "code-review",
"name": "Review a pull request"
}
],
"trustPolicy": "trust_01abc..."
}
]
}Get a single agent
GET /api/a2a/agents/{agentId}Returns the full agent record including the latest fetched agent card.
Response
{
"id": "agent_01abc...",
"name": "Code Review Agent",
"url": "https://review-agent.example.com",
"status": "healthy",
"agentCard": {
"@type": "AgentCard",
"name": "Code Review Agent",
"url": "https://review-agent.example.com",
"skills": [...]
},
"trustPolicy": {
"id": "trust_01abc...",
"name": "default-allow",
"rules": [...]
},
"health": {
"lastCheck": "2026-06-02T11:55:00Z",
"latencyMs": 42,
"status": "healthy"
}
}Refresh agent card
Re-fetch the agent card from the remote agent's /.well-known/agent-card.json endpoint. Use this after a peer agent has updated its capabilities.
POST /api/a2a/agents/{agentId}/refetchResponse
{
"ok": true,
"agentCard": {
"@type": "AgentCard",
"name": "Code Review Agent",
"version": "1.1.0",
"skills": [...]
},
"refreshedAt": "2026-06-02T12:05:00Z"
}Trust policies
Trust policies govern which A2A agents are allowed to dispatch tasks and what operations they can perform. Policies are written in Cedar and managed via the platform's policy engine.
List trust policies
GET /api/factory/a2a/policiesResponse
{
"policies": [
{
"id": "trust_01abc...",
"name": "default-allow",
"description": "Allow all registered agents to dispatch read-only tasks.",
"rules": ["permit(principal, action == Action::dispatch, resource);"]
}
]
}Create or update a policy
POST /api/factory/a2a/policies
Content-Type: application/json{
"name": "restricted-dispatch",
"description": "Only allow code-review agents from trusted domains.",
"rules": [
"permit(principal in AgentGroup::trusted-reviewers, action == Action::dispatch, resource);"
]
}Get a specific policy
GET /api/factory/a2a/policies/{policyId}Update a policy
PUT /api/factory/a2a/policies/{policyId}Delete a policy
DELETE /api/factory/a2a/policies/{policyId}Dispatch flow overview
A2A as MCP tools
Registered A2A agents are automatically exposed as tools on the MCP endpoint. This means running agent sessions can invoke peer agents as named tools using the convention <agentSlug>.<skillId>:
{
"method": "tools/call",
"params": {
"name": "code-review-agent.code-review",
"arguments": {
"prUrl": "https://github.com/my-org/my-repo/pull/42"
}
}
}See A2A as MCP tools for the full bridge documentation.
Related pages
- A2A Agent Card -
.well-known/agent-card.jsondiscovery - A2A Registry - the dashboard view of registered agents
- A2A Policies - Cedar trust policies
- MCP Session Tools - A2A agents as MCP tools