# ENS Resolver

> ENS Resolver is a paid API for AI agents from ens-resolver.pdfextractapi.workers.dev, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-15).

Resolves an ENS name to an Ethereum address, or reverse-resolves an EVM address to its primary ENS name.

## Facts

- Endpoint: POST https://ens-resolver.pdfextractapi.workers.dev/resolve
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/ens-resolver-d149938b
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_hIpPpt5bTdf-0BWgbIfkO

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-resolver-d149938b -d '<json body>'
```

Example prompt: What Ethereum address does vitalik.eth resolve to? Use ENS resolution to look it up.

## When to prefer this

Use this endpoint when you need to programmatically resolve ENS names to Ethereum addresses or perform reverse lookups (address to ENS name) within an automated agent workflow. It's ideal when ENS resolution needs to be embedded in a payment flow, identity verification, or user display logic without requiring an on-chain RPC call or maintaining an ENS library locally.

## Known failure modes

- ENS name does not exist or has not been registered — returns null or error
- Address has no primary ENS name set — returns null
- Invalid ENS name format — input validation error
- Both name and address provided simultaneously — rejected by API
- Network or DNS resolution failure — HTTP 5xx error
- Rate limiting or payment failure for x402 payment — HTTP 402 error

## How this service works

Resolve an ENS name to an address, or an address to its primary ENS name.

## Output

Returns either the resolved Ethereum address (hex string) for a given ENS name, or the primary ENS name (e.g. example.eth) for a given EVM address. The response is a JSON object containing the resolved value.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "properties": {
      "name": {
       "type": "string",
       "description": "An ENS name to resolve to an address."
      },
      "address": {
       "type": "string",
       "description": "An EVM address to reverse-resolve to its primary ENS name. Provide this or 'name', not both."
      }
     }
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST"
     ],
     "type": "string"
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/ens-resolver-d149938b/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from ens-resolver.pdfextractapi.workers.dev](https://www.zero.xyz/host/ens-resolver.pdfextractapi.workers.dev/llms.txt)
