# ENS Bulk Reverse Resolver

> ENS Bulk Reverse Resolver is a paid API for AI agents from agent402.tools, paid per call via x402, $0.002/call, status unknown (last checked 2026-09-14).

Reverse-resolves up to 50 Ethereum addresses in a single call to their ENS primary names and avatar URLs

## Facts

- Endpoint: POST https://agent402.tools/api/ens-bulk-resolve
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/ens-bulk-reverse-resolver-f0f153e5
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_eMCUXEjzFvoQ24KTGFjFm

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability ens-bulk-reverse-resolver-f0f153e5 -d '<json body>'
```

Example prompt: Can you look up the ENS names and avatar URLs for these Ethereum addresses: 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045, 0xAb5801a7D398351b8bE11C439e05C5B3259aeC9B, and 0x1db3439a222c519ab44bb1144fc28167b4fa6ee6?

## When to prefer this

Use this endpoint when you need to label multiple Ethereum addresses with human-readable ENS names and avatars in a single API call. It is ideal for enriching transaction lists, wallet leaderboards, or any UI that displays multiple wallet addresses at once. Prefer this over single-address resolvers when you have 2–50 addresses to resolve, as it batches all lookups into one call and one payment.

## Known failure modes

- More than 50 addresses submitted — request rejected
- Invalid address format (not 0x-prefixed 40-hex) — may return error or null for that entry
- Address has no ENS primary name — returns null for name field but still returns checksum displayName
- ENS resolver or upstream node temporarily unavailable — service error
- Payment not processed (x402 protocol failure) — request not fulfilled

## How this service works

Reverse-resolve a batch of Ethereum addresses to ENS primary names + avatar URLs (up to 50 per call). 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.

## Output

Returns one row per input address containing: the ENS primary name (or null if none registered), a displayName (ENS name if available, otherwise checksum-formatted address), and the avatar URI from ENS records. Results are ordered to match the input address array.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "addresses": {
   "type": "array",
   "description": "1-50 Ethereum addresses (0x-prefixed 40-hex)."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 2,
  "source": "ensideas",
  "results": [
   {
    "name": "vitalik.eth",
    "avatar": "https://...",
    "address": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045",
    "displayName": "vitalik.eth"
   },
   {
    "name": null,
    "avatar": null,
    "address": "0x000000000000000000000000000000000000dead",
    "displayName": "0x0000…dead"
   }
  ],
  "namedPct": 50,
  "namedCount": 1
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/ens-bulk-reverse-resolver-f0f153e5/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agent402.tools](https://www.zero.xyz/host/agent402.tools/llms.txt)
