For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Dashboard
User GuideDeveloper GuidesAPI Reference
User GuideDeveloper GuidesAPI Reference
  • Getting Started
    • What is Runtype?
    • Creating your account
    • Platform Keys vs. BYOK
    • Understanding the Runtype UI
    • Quickstart: Social Media Post Generator
    • Quickstart: From Agent to Chat Widget
  • Dashboard
    • What is the Dashboard?
    • Daily Executions
  • Playground
    • What is the Playground?
  • Products & Surfaces
    • What are Products?
    • What are Surfaces?
    • Creating a Product
    • Setting up a Chat Surface
    • Setting up an API Surface
    • Setting up an MCP Surface
    • Setting up an A2A Surface
    • Setting up a Slack Surface
    • MCP authentication
    • Authenticating with product API keys
    • Embedding the chat widget (script tag)
    • Embedding the chat widget (React)
    • Surface orchestration modes
    • Product views
    • Adding Capabilities to a product
    • Connecting external agents
    • How A2A works
    • Connecting to Cursor / VS Code
    • Connecting to Claude Desktop
    • Scoping API keys to capabilities
    • Auto-generated OpenAPI spec
    • Calling your API endpoints
    • Client tokens and domain restrictions
    • AI-powered theme generation
    • Widget theming and customization
    • Product versioning and status
  • Flows
    • What are Flows?
    • Creating and Editing Flows
    • Flow step types overview
    • Agent and Flow Templates
    • Using prompt steps
    • Using transform-data steps
    • Using conditional steps
    • Using fetch-url and api-call steps
    • Using record steps (upsert/retrieve)
    • Flow variables and templates
    • Flow versioning and publishing
    • Running flows in batch
    • Handling batch failures
    • Debugging flows
  • Agents
    • What are Agents?
    • Creating and configuring Agents
    • Agent tools
  • Records
    • What are Records?
    • Creating and managing records
    • Using records in flows
    • Filtering and searching records
  • Tools
    • What are Tools?
    • Built-in Tools
    • Creating custom tools
    • Creating external tools
    • Runtime tools
  • Evals
    • What are Evals?
    • Running an Eval
    • Interpreting eval results
  • Schedules
    • What are Schedules?
    • Automating batch processing
  • Logs
    • What are Logs?
    • Working with Logs
  • Integrations
    • Connecting AI model providers
    • Slack integration
    • Google Workspace integration
    • GitHub integration
    • Linear integration
    • Weaviate (vector search)
    • Firecrawl (web scraping)
    • Exa (web search)
  • Settings
    • What's in Settings?
    • Available AI models
    • What are Organizations?
    • Managing AI models
    • Managing API keys
    • Billing and plans
    • Usage data
    • Team members and permissions
    • Appearance and preferences
    • Integrations (PostHog, Weaviate, Daytona)
  • Troubleshooting & FAQ
    • FAQ
    • Rate Limits and Usage
    • Managing Runtype with Claude
    • Flow execution failures
    • Common errors and solutions
    • Authentication issues
Dashboard
LogoLogo
On this page
  • Discovery phase
  • Invocation phase
  • Orchestrated routing
  • Protocol standards
  • Security considerations
  • Use cases
  • Multi-agent systems
  • Cross-platform collaboration
  • Cross-organization collaboration
  • Next steps
Products & Surfaces

How A2A works

Was this page helpful?
Previous

Connecting to Cursor / VS Code

Next
Built with

The A2A (Agent-to-Agent) protocol enables AI agents to discover, understand, and invoke each other’s capabilities through standardized communication.

Discovery phase

External agents discover your capabilities by fetching the Agent Card:

$GET https://api.runtype.com/v1/products/{productId}/surfaces/{surfaceId}/a2a/.well-known/agent-card.json

The Agent Card describes your agent’s identity, skills, and how to invoke them. It is publicly accessible without authentication.

Invocation phase

Once discovered, external agents invoke capabilities by sending JSON-RPC requests to the A2A endpoint:

$POST https://api.runtype.com/v1/products/{productId}/surfaces/{surfaceId}/a2a

The A2A endpoint supports these JSON-RPC methods:

  • message/send — Execute a task synchronously
  • message/stream — Execute a task with SSE streaming
  • tasks/get — Get task status
  • tasks/cancel — Cancel a running task
  • tasks/resubscribe — Resume SSE stream for a task

Authentication uses either header:

  • Authorization: Bearer a2a_xxx
  • X-API-Key: a2a_xxx

Orchestrated routing

When A2A Surfaces use managed mode, the external agent does not need to specify which skill to invoke. Instead:

  1. Agent sends a natural language request
  2. Your product’s orchestrator analyzes the request
  3. Orchestrator routes to the appropriate capability
  4. Response is returned to the requesting agent

This simplifies integration — external agents do not need to understand your internal capability structure.

Protocol standards

Runtype’s A2A implementation follows the A2A Protocol v0.3.0 (https://a2a-protocol.org).

Key features:

  • JSON-RPC — All communication uses JSON-RPC 2.0
  • Self-describing — Skills include schema information in the Agent Card
  • Streaming — SSE streaming for real-time responses
  • Task lifecycle — Tasks can be tracked, cancelled, and resumed

Security considerations

A2A Surfaces support authentication and rate limiting:

  • API key authentication — Keys use the a2a_ prefix
  • Rate limits — Configurable per key
  • Capability scoping — Control which capabilities are exposed as skills
  • Execution logs — Track which agents are calling your capabilities

Use cases

Multi-agent systems

Build complex workflows by composing multiple specialized agents across different platforms.

Cross-platform collaboration

Platforms like LangChain, CrewAI, or Vercel AI SDK can discover and call your Capabilities as part of larger workflows.

Cross-organization collaboration

Partner organizations can integrate their agents with yours without custom integration work.

Next steps

  • Connecting external agents for integration details
  • Setting up an A2A Surface
  • Surface orchestration modes