---
title: "A2A API"
description: "Agent-to-agent connections and passport verification."
label: "A2A"
generated: "the API catalogue in apps/control-plane/src/routes/developer.ts"
---


A connection starts `PENDING` and stays unusable until its remote passport verifies against the key you registered. Blocking is immediate and applies to in-flight sessions.

## Endpoints

| | Endpoint | Permission | Notes |
| --- | --- | --- | --- |
| `GET` | `/v1/a2a/connections` | `a2a:read` | — |
| `POST` | `/v1/a2a/connections` | `a2a:connect` | — |
| `POST` | `/v1/a2a/connections/{connectionId}/verify` | `a2a:update` | — |
| `POST` | `/v1/a2a/connections/{connectionId}/block` | `a2a:block` | — |

## What each endpoint does

### `GET /v1/a2a/connections`

List A2A connections.

Requires `a2a:read`.

### `POST /v1/a2a/connections`

Register an A2A connection (starts PENDING).

Requires `a2a:connect`.

### `POST /v1/a2a/connections/{connectionId}/verify`

Verify the remote passport against the registered key.

Requires `a2a:update`.

### `POST /v1/a2a/connections/{connectionId}/block`

Block an A2A connection.

Requires `a2a:block`.
