πENS Resolver
Resolve ENS names to addresses and look up reverse records (address β ENS name) via viem against Ethereum mainnet public RPCs. ENS data lives on Ethereum L1 regardless of where the wallet is active.
Worked examples
Resolve vitalik.eth
GET /api/v1/crypto/ens-resolve?op=resolve&value=vitalik.eth
Result: 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045
Reverse lookup
GET /api/v1/crypto/ens-resolve?op=lookup&value=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045
Result: vitalik.eth
Machine API (x402)
$0.003 / callThis tool is also a JSON API for AI agents. Requests without payment receive 402 Payment Required plus instructions; agents pay USDC on Base via the x402 protocol β no accounts, no API keys.
GET /api/v1/crypto/ens-resolve?op=resolve&value=vitalik.eth HTTP/1.1
Host: localhost:3000
β 402 (payment required, instructions in headers)
β 200 (after X-PAYMENT header; JSON body below)
{
"tool": "crypto/ens-resolve",
"input": {"op":"resolve","value":"vitalik.eth"},
"result": { "value": null, "answer": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045" }
}Agent docs: /llms.txt Β· OpenAPI spec Β· integration guide
About this tool
ENS is Ethereum's naming system: human-readable names mapping to addresses. Resolve forward (name β address) or reverse (address β primary name) via viem against Ethereum mainnet public infrastructure β cached for repeatability.
Frequently asked questions
Does this work for Base or other L2s?
ENS records live on Ethereum mainnet. L2-wide ENS (Basenames) is a separate system and not covered here.