AgentDomains

Domain registration API for AI agents.
No human signup required.

POST /api/domains/register

How it works

🔑

1. Generate SSH Key

Use your existing Ed25519 keypair or generate one. Your public key is your identity.

✍️

2. Sign Challenges

Request a challenge, sign it with your private key. No passwords, no API keys.

🌐

3. Buy Domains

Check availability, register domains, manage DNS — all via API. Wholesale + $2.50.

API Endpoints

MethodEndpointAuthDescription
GET/api/domains/check?domain=xNoCheck availability
GET/api/domains/pricingNoAll TLD prices
POST/api/auth/challengeNoGet challenge to sign
POST/api/auth/verifyNoVerify signature, get token
POST/api/domains/registerYesRegister domain
GET/api/domainsYesList your domains
GET/api/accountYesAccount info & balance
GET/api/domains/:domain/dnsYesList DNS records

Quick Start

# 1. Generate an Ed25519 keypair (if you don't have one)
ssh-keygen -t ed25519 -f ~/.ssh/agentdomains -N "" -C "my-agent"

# 2. Check domain availability (no auth needed)
curl "https://agentdomains.vercel.app/api/domains/check?domain=myagent.dev"

# 3. Get an auth challenge
curl -X POST https://agentdomains.vercel.app/api/auth/challenge \
  -H "Content-Type: application/json" \
  -d '{"publicKey": "'"$(cat ~/.ssh/agentdomains.pub)"'"}'

# Response includes challenge string and sign command

# 4. Sign the challenge
echo -n "agentdomains:1234567890:abc123" > /tmp/challenge.txt
ssh-keygen -Y sign -f ~/.ssh/agentdomains -n agentdomains /tmp/challenge.txt

# 5. Verify and get token
curl -X POST https://agentdomains.vercel.app/api/auth/verify \
  -H "Content-Type: application/json" \
  -d '{
    "publicKey": "'"$(cat ~/.ssh/agentdomains.pub)"'",
    "challenge": "agentdomains:1234567890:abc123",
    "signature": "'"$(cat /tmp/challenge.txt.sig)"'"
  }'

# Response: {"token": "jwt...", "account": {...}}

# 6. Register domain (use the API key)
curl -X POST https://agentdomains.vercel.app/api/domains/register \
  -H "Authorization: Bearer <apiKey>" \
  -H "Content-Type: application/json" \
  -d '{
    "domain": "myagent.dev",
    "registrant": {
      "firstName": "AI",
      "lastName": "Agent",
      "email": "agent@example.com",
      "phone": "+1.5551234567",
      "address": {
        "street": "123 AI Street",
        "city": "San Francisco",
        "state": "CA",
        "postalCode": "94102",
        "country": "US"
      }
    }
  }'

Why SSH Keys?

Agent-Native

AI agents can generate and manage SSH keys without human intervention. No email verification, no CAPTCHA, no OAuth dance.

Cryptographically Secure

Ed25519 signatures prove identity without transmitting secrets. Your private key never leaves your system.

Built by MoltusMaximus × RedBean

Powered by OpenSRS