ENS subnames under 402bot.eth, 402api.eth, and 402mcp.eth — issued once, no renewals for holders, resolvable on every chain.
402bot, 402api, and 402mcp map to the three places autonomous software shows up in production today: agents that act on a user's behalf, services that expose paid endpoints, and Model Context Protocol servers that broker tool use.
Autonomous agents that hold wallets, negotiate, transact, and represent a principal across chains.
Paid HTTP services that return data, run inference, or settle the HTTP 402 response in real time.
Model Context Protocol servers — the tool surface assistants attach to. Resolvable by name, not by URL.
Payment processors, infrastructure providers, and standards bodies issue and verify agent identities. Developers and end users mint and own them. The same primitive serves both audiences without intermediation.




All third-party names, logos, and trademarks shown above are the property of their respective owners and are used here solely to illustrate integration surfaces relevant to x402. Their inclusion does not imply endorsement, sponsorship, partnership, affiliation, or any commercial relationship with x402 Identity Hub.
Every agent resolves to a single onchain record. Replace API-key allowlists and certificate pinning with namespace-level trust that any party can verify without a directory call.
ENS is a public good. No registrar, foundation, or platform can revoke a name. Identities port across wallets, chains, and providers without re-issuance.
Every issuance is a transaction. Every resolution is verifiable. Compliance can grep the chain — no proprietary log shipping, no opaque registrar API.
x402 sits between the agent and the broader ENS infrastructure. The NameWrapper holds the issued subname; resolvers expose it across L1, every major L2, and via CCIP-Read to anywhere ENS reaches.
Everything you can grep on Etherscan, surfaced as live state. No analytics layer, no proprietary dashboard — just the chain.
Launched on Base via Bankr. Registering a name earns 25% of the mint fee back in $X402ID, and trading fees flow to the x402 treasury to keep the parent names renewed.
$X402ID is a utility token for the x402 Identity Hub. It is not an investment, carries no claim on revenue, and its price can go to zero. Cashback terms may change; changes are announced before they take effect.
Quotes via 0x · pool fee 1.75% applies on every trade. Swaps settle on Base; minting names stays on Ethereum mainnet.
The NameWrapper locks each subname away from the parent at mint, and holders never renew. The one remaining dependency — the parent names themselves — is renewed from $X402ID trading fees, paid to the x402 treasury Safe.
Every subname is issued with PARENT_CANNOT_CONTROL already burned. A burned fuse cannot be cleared — by us, by the parent owner, or by the registrar contract. The holder controls the name's records, resolver, and transfers.
Trading fees from $X402ID flow to the x402 treasury Safe in WETH. Parent renewals are the first call on that treasury, ahead of development and buybacks, and every renewal is a public transaction on Ethereum.
The registrar exposes a register/batchRegister pair and an availability check. Wagmi, viem, ethers, cast — anything that speaks the ABI works.
# Is 'alice' available under 402bot.eth? cast call \\ 0xeb9e9ea385fe28b51a3f9a7d93fb893e0a1f9633 \\ "isAvailable(bytes32,string)" \\ $(cast namehash 402bot.eth) \\ "alice"
import { useReadContract, useWriteContract } from 'wagmi' import { namehash } from 'viem' const { writeContract } = useWriteContract() // The fee is set on-chain; read it rather than hardcoding it const { data: fee } = useReadContract({ address: '0xeb9e…9633', abi: registrarAbi, functionName: 'mintFee' }) writeContract({ address: '0xeb9e…9633', abi: registrarAbi, functionName: 'register', args: [namehash('402bot.eth'), 'alice'], value: fee, })