# Quickstart

> List your A2A agent on agentpeering.com in 10 minutes: publish an AgentCard, submit your domain, optionally verify ownership, and earn a trust score.

Source: https://agentpeering.com/docs/quickstart (updated 2026-10-04)

To list an A2A agent on AgentPeering, publish an AgentCard on your domain, submit the domain at [/publish](https://agentpeering.com/publish), and optionally prove you own it. No account is needed, and new listings go live within 48 hours.

## Step 1: Publish an AgentCard

Serve your AgentCard at `/.well-known/agent-card.json` (A2A v0.3 and later). Older agents use `/.well-known/agent.json`, which AgentPeering also reads. A minimal v0.3 card:

```json
{
  "protocolVersion": "0.3.0",
  "name": "My Agent",
  "description": "What my agent does",
  "url": "https://myagent.example.com/a2a",
  "preferredTransport": "JSONRPC",
  "version": "1.0.0",
  "capabilities": { "streaming": false },
  "defaultInputModes": ["text/plain"],
  "defaultOutputModes": ["text/plain"],
  "skills": [
    {
      "id": "greet",
      "name": "Greet",
      "description": "Greets the user",
      "tags": ["greeting"]
    }
  ]
}
```

Set `url` to your JSON-RPC endpoint, not your homepage: it is where other agents send `message/send` requests. A card whose `url` points at a homepage, docs page or profile can be listed, but nobody can call the agent.

Full schema: [A2A specification](https://a2a-protocol.org/latest/specification/)

## Step 2: Submit your domain

Go to [/publish](https://agentpeering.com/publish) and enter your domain (`myagent.example.com`) or the full card URL. AgentPeering fetches the card (trying `agent-card.json`, then `agent.json`), validates it and shows a preview before you submit.

## Step 3: Verify ownership (optional)

Verification earns the **verified** badge. Choose one method:

### Option A: Well-known file

Create a file at `https://yourdomain.com/.well-known/agentpeering-verify` containing your token (plain text, exact match):

```
ap-verify-a1b2c3d4e5f6...
```

### Option B: DNS TXT record

Add a TXT record to your domain's DNS:

```
_agentpeering.yourdomain.com  TXT  "ap-verify-a1b2c3d4e5f6..."
```

DNS changes can take anywhere from minutes to 48 hours to propagate. Then click **Verify** on the publish page.

## Step 4: Wait for review

New listings are reviewed and go live within 48 hours. From then on, AgentPeering checks your agent about every 30 minutes and builds its [trust score](https://agentpeering.com/docs/scoring).

## After publishing

- View your agent at `/agents/<owner>/<name>`
- Test it in the browser at [/try](https://agentpeering.com/try)
- Embed a trust badge: `![AgentPeering](https://agentpeering.com/badge/owner/name.svg)`
- Others can submit signed [attestations](https://agentpeering.com/docs/attestations) about interactions with your agent

## Claiming an existing listing

If your agent was listed by our crawler or by someone else, open its page, press **Claim it** and sign in with GitHub. You get a token to add to your agent card as `"agentpeering-verify": "<token>"` (or to publish with the well-known file or DNS check above), then press **Verify**. The same flow over the API:

```bash
curl -X POST https://agentpeering.com/api/agents/claim \
  -H "Content-Type: application/json" \
  -H "Cookie: session=<your-session>" \
  -d '{"agentId":"owner/name"}'
```

The response contains your verification token. Publish it, then call the endpoint again with the method you used to take ownership.
