Ethereum mainnet · live

Permanent onchain identity for AI agents.

ENS subnames under 402bot.eth, 402api.eth, and 402mcp.eth — issued once, owned forever, resolvable on every chain.

0.005 ETH  per nameNo renewals · no expiryNameWrapper-lockedParent expiry 3226 CE
01 / Namespaces

One tree. Three surfaces institutions integrate.

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.

Surface 01 — Agents
402bot.eth

Autonomous agents that hold wallets, negotiate, transact, and represent a principal across chains.

treasury.402bot.eth
scheduler.402bot.eth
trader-7.402bot.eth
Surface 02 — Services
402api.eth

Paid HTTP services that return data, run inference, or settle the HTTP 402 response in real time.

prices.402api.eth
inference.402api.eth
geocode.402api.eth
Surface 03 — MCP
402mcp.eth

Model Context Protocol servers — the tool surface assistants attach to. Resolvable by name, not by URL.

github.402mcp.eth
slack.402mcp.eth
analytics.402mcp.eth
02 / Institutions

Designed for both sides of the agent market.

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.

P.01

Verifiable identity

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.

P.02

No vendor lock-in

ENS is a public good. No registrar, foundation, or platform can revoke a name. Identities port across wallets, chains, and providers without re-issuance.

P.03

Audit-ready trail

Every issuance is a transaction. Every resolution is verifiable. Compliance can grep the chain — no proprietary log shipping, no opaque registrar API.

03 / Architecture

One name, every chain, every wallet.

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.

AGENTalice.402bot.ethholds wallet · signsregister()x402 REGISTRARX402SubnameRegistrar0xeb9e…9633fee · validation · fusessetSubnodeRecord()ENS NAMEWRAPPER0xD441…6401fuses: CANNOT_UNWRAPPARENT_CANNOT_CONTROLresolve()RESOLVERPublicResolveraddr · text · contenthashCCIP-Read enabledEthereum L1BaseOptimismArbitrumLinea · CCIP-*Single transaction · Single source of truth · No off-chain registrar
RegistrarReceives the 0.005 ETH fee, validates the label, and calls the NameWrapper.
NameWrapperIssues the wrapped subname with permanence fuses burned at mint time.
ResolverExposes address, text, and contenthash records to any consumer of ENS.
CCIP-ReadResolves the name from any chain or off-chain backend implementing EIP-3668.
04 / Live metrics

Verifiable, in real time.

Everything you can grep on Etherscan, surfaced as live state. No analytics layer, no proprietary dashboard — just the chain.

Names mintedall-time · across all parents
Parent expiry3226 CE+1,200 years over 10-year commitment
Registrar0xeb9e9ea3
85fe28b51a3f
9a7d93fb893e
0a1f9633
View on Etherscan ↗
Last mintawaiting first mintlive · listening for SubnameMinted
05 / Permanence

An identity you can build a 10-year roadmap on.

Procurement teams need a guarantee, not a promise. The NameWrapper enforces immutability at the protocol level, and the 1,200-year parent extension removes the only remaining failure mode: the parent name itself.

NameWrapper fuses, burned at mint

Every subname is issued with a fixed set of ENS fuses already burned. Once set, fuses cannot be cleared — by us, by the parent owner, by the registrar contract, or by a future governance vote. The agent holds the name on the same terms as any 2nd-level ENS domain.

CANNOT_UNWRAP
The wrap cannot be removed. The fuses cannot be reset by unwrapping and rewrapping.
PARENT_CANNOT_CONTROL
The parent owner — including us — cannot reclaim, replace, or burn the subname.
CANNOT_BURN_FUSES
No additional fuses can be set after issuance. The permission set is final.
CANNOT_SET_RESOLVER
Reserved — controlled by the holder, not the parent.

Combined with the parent longevity commitment, the procurement guarantee is simple: a name minted today resolves on ENS through the year 3226 with no required action from the holder.

06 / Integrate

One contract, two calls, no SDK required.

The registrar exposes a register/batchRegister pair and an availability check. Wagmi, viem, ethers, cast — anything that speaks the ABI works.

X402SubnameRegistrar · Ethereum mainnet0xeb9e9ea385fe28b51a3f9a7d93fb893e0a1f9633
check availability · cast
# Is 'alice' available under 402bot.eth?
cast call \\
  0xeb9e9ea385fe28b51a3f9a7d93fb893e0a1f9633 \\
  "isAvailable(bytes32,string)" \\
  $(cast namehash 402bot.eth) \\
  "alice"
register · wagmi
import { useWriteContract } from 'wagmi'
import { namehash, parseEther } from 'viem'

const { writeContract } = useWriteContract()

writeContract({
  address: '0xeb9e…9633',
  abi:     registrarAbi,
  functionName: 'register',
  args: [namehash('402bot.eth'), 'alice', owner],
  value: parseEther('0.005'),
})
GitHub repository Read the contract NameWrapper spec