ENS bulk reverse resolver

$0.002 per call · USDC via x402 · POST /api/ens-bulk-resolve

Reverse-resolve a batch of Ethereum addresses to ENS primary names + avatar URLs (up to 50 per call). Send POST /api/ens-bulk-resolve with the required field addresses and pay $0.002 per call over x402 or MPP (there is no free tier). It returns a JSON object with count, namedCount, namedPct, results and source.

Returns one row per address with name (or null), displayName (with checksum if no name), and avatar URI. Use to label transaction lists, wallet leaderboards, or NFT holder snapshots with human-readable names instead of 0xabc… stubs.

Category: Crypto & onchain data · Tags: ens identity reverse-resolve bulk label

TRY IN PLAYGROUND →

Parameters

NameTypeRequiredDescription
addressesarrayyes1-50 Ethereum addresses (0x-prefixed 40-hex).

Example request

curl -i -X POST https://agent402.tools/api/ens-bulk-resolve \
  -H "Content-Type: application/json" \
  -d '{"addresses":["0xd8da6bf26964af9d7eed9e03e53415d37aa96045","0x000000000000000000000000000000000000dead"]}'

Without payment this returns HTTP 402 Payment Required with the exact price for ens-bulk-resolve; any x402 v2 or MPP client pays it and retries.

Example response

{
  "count": 2,
  "namedCount": 1,
  "namedPct": 50,
  "results": [
    {
      "address": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045",
      "name": "vitalik.eth",
      "displayName": "vitalik.eth",
      "avatar": "https://..."
    },
    {
      "address": "0x000000000000000000000000000000000000dead",
      "name": null,
      "displayName": "0x0000…dead",
      "avatar": null
    }
  ],
  "source": "ensideas"
}
FieldTypeAlways presentIn the example
countnumberyes2
namedCountnumberyes1
namedPctnumberyes50
resultsarray of objectsyes2 items in the example
sourcestringyesensideas

From an MCP client

catalog.call {
  "slug": "ens-bulk-resolve",
  "params": {
    "addresses": [
      "0xd8da6bf26964af9d7eed9e03e53415d37aa96045",
      "0x000000000000000000000000000000000000dead"
    ]
  }
}

The hosted connector at https://agent402.tools/mcp needs a payment for ens-bulk-resolve; the stdio package pays it from a wallet or from AGENT402_CREDITS_KEY. Local install: npx -y agent402-mcp.

Errors and behavior

Paid call (JavaScript agent)

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

const client = new x402Client();
client.setSpendControls?.(false); // keep your own spending ceiling in code
registerExactEvmScheme(client, { signer: privateKeyToAccount(KEY) });
const payFetch = wrapFetchWithPayment(fetch, client);

const res = await payFetch("https://agent402.tools/api/ens-bulk-resolve", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    "addresses": [
      "0xd8da6bf26964af9d7eed9e03e53415d37aa96045",
      "0x000000000000000000000000000000000000dead"
    ]
  }),
});

Related tools

Known-address label lookup

FREE w/ compute · or $0.002 · POST /api/address-label

Label a known EVM address from a curated, committed dataset: major stablecoin + token contracts (the USDC and USDG contr…

All coin ids (paged)

$0.005 · GET /api/coins-list

The complete list of tracked coins (~18k) as {id, symbol, name}, paged: `page` + `perPage` (1-500, default 250). `includ…

EAS attestations

$0.002 · POST /api/eas-attestations

List EAS (Ethereum Attestation Service) attestations for an address as recipient, attester, or either, on mainnet/Base/O…

Farcaster by Ethereum address

$0.002 · POST /api/farcaster-by-address

Reverse-lookup an Ethereum address to its Farcaster account (via verified address). Returns FID, username, display name,…

Farcaster profile

$0.002 · POST /api/farcaster-profile

Lookup a Farcaster profile by username or FID. Returns FID, username, display name, bio, profile picture URL, follower/f…

Wallet token transfers (filtered)

$0.003 · POST /api/asset-transfers

Recent token transfers for a wallet on Base, Ethereum and other EVM chains, newest first. Filtered transfer log for an E…