Skip to content
Find Domain

Domain discovery in one HTTP call

$0.002 per query. No API key, no account, no rate limits.

See the API ↓
Tell your 🦞 agent: curl https://finddomain.io/skill.md

Settled on Base via x402

Add domain discovery to your agent or SaaS in minutes. Every call is independently priced and settled — no quota, no billing dashboard.

How It Works

Pricing

Endpoint Price What you get
GET /suggest?query=… $0.002 Algorithmic domain name suggestions (stemming, IDN normalization)
GET /status?domain=…&scope=estimate $0.003 Estimated domain availability (DNS-based, no registry lookup)
GET /status?domain=… $0.010 Precise registry-level availability check

Prices in USDC on Base mainnet (ERC-20, eip155:8453). $0.002 = 2,000 atomic units.

Parameters

Endpoint Param Description
/suggest query * Search term(s)
defaults Comma-separated default zones (e.g. com,io,co)
keywords Comma-separated keywords for seeding results (e.g. food,kitchen)
location Two-letter country code for geo-relevant zones (e.g. de)
vendor Registrar domain for filtering by supported zones (e.g. dnsimple.com)
/status domain * Fully qualified domain to check (e.g. tea.com)
scope Set to estimate for DNS-based check ($0.003 instead of $0.010)

* Required

GET /suggest?query=tea

{
  "results": [
    { "domain": "tea.com", "subdomain": "tea.", "zone": "com" },
    { "domain": "tea.house", "subdomain": "tea.", "zone": "house" },
    { "domain": "tea.cafe", "subdomain": "tea.", "zone": "cafe" }
  ]
}

GET /status?domain=tea.com

{
  "domain": "tea.com",
  "zone": "com",
  "status": "active",
  "tags": "generic"
}

Suggestions don’t include availability — use /status to check a specific domain.

Quickstart

import { x402Client, wrapFetchWithPayment } from "@x402/fetch";
import { registerExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

const client = new x402Client();
registerExactEvmScheme(client, {
  signer: privateKeyToAccount(process.env.PRIVATE_KEY),
});
const fetch = wrapFetchWithPayment(globalThis.fetch, client);

// Domain suggestions
const suggestions = await fetch("https://finddomain.io/suggest?query=tea");
console.log(await suggestions.json());

// Precise availability
const status = await fetch("https://finddomain.io/status?domain=tea.com");
console.log(await status.json());

@x402/fetch handles the 402 → sign → retry flow automatically. Install: npm install @x402/fetch @x402/evm viem

Agent Integration

finddomain.io is built for AI agents. Any agent with an x402-compatible wallet and USDC on Base can call the API autonomously — no user interaction required, no API key to manage.

curl https://finddomain.io/skill.md

The skill file documents all endpoints, the x402 payment flow, example responses, and error handling.

What is x402?

x402 is an open HTTP payment protocol built on the 402 Payment Required status code. When a client calls a protected endpoint, the server responds with a machine-readable PAYMENT-REQUIRED header describing the price and payment address. The client signs a USDC authorization (EIP-3009, gasless) and retries. The server verifies and settles on-chain, then serves the resource. No accounts, no API keys — payment is the authentication.

Learn more at x402.org