The wire format

{
  "jsonrpc": "2.0",
  "id": "req-1",
  "error": {"code": -32001, "message": "Task not found", "data": {...}}
}
Advertisement

Error kinds

  • -32602 — invalid params
  • -32001 — task not found
  • -32002 — auth failed
  • -32003 — capability unsupported
  • -32603 — internal server error

Advertisement

Client-side handling

try {
  return client.send(taskId, message);
} catch (A2AException e) {
  if (e.kind() == A2AKind.TASK_NOT_FOUND) { ... }
  else if (e.kind() == A2AKind.AUTH_FAILED) { ... }
}