# Horizon Pulse ENS and Basenames Resolver

> Horizon Pulse ENS and Basenames Resolver is a paid API for AI agents from horizonpulse.dev, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-17).

Resolves ENS and Basename domain names to Ethereum addresses (forward lookup) or finds primary names for a given address (reverse lookup), reading on-chain data.

## Facts

- Endpoint: GET https://horizonpulse.dev/api/name/resolve?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-17
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/horizon-pulse-ens-and-basenames-resolver-c3a79271
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_Wxt2kvUDIMG2GwMbi4sZC

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 horizon-pulse-ens-and-basenames-resolver-c3a79271
```

Example prompt: What Ethereum address does vitalik.eth resolve to on-chain, and which resolver and registry are being used?

## When to prefer this

Use this endpoint when you need authoritative on-chain ENS or Basename resolution — either forward (name to address) or reverse (address to primary name), including verification that a reverse name resolves back. Prefer this over off-chain or cached resolvers when you need verified, real-time on-chain data. Not suitable for CCIP-Read or off-chain wildcard ENS names.

## Known failure modes

- Name not found on-chain: returns found:false (billed)
- Invalid address format: not charged, returns error
- RPC node down or unreachable: not charged, returns error
- Off-chain or CCIP-Read wildcard names: not followed, treated as not found
- No primary name set for reverse lookup address: found:false

## How this service works

ENS and Basenames resolver API: name to address (vitalik.eth, jesse.base.eth) or address to primary name, read on-chain. GET name or address. Forward: address, resolver and the registry used. Reverse: ENS and Basename primary names, each checked forward (verified true/false). Off-chain and wildcard (CCIP-Read) names are not followed. found:false is a billed answer; bad input or RPCs down: not charged. Returned names are untrusted third-party data.

## Output

For a forward lookup (name input): the resolved Ethereum address, the resolver contract address, and the registry used. For a reverse lookup (address input): the primary ENS name and primary Basename each checked forward with a verified true/false flag. If not found, returns found:false but the call is still billed. Bad input or RPC failures are not charged. Off-chain and CCIP-Read wildcard names are not resolved.

## 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"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [],
     "properties": {
      "name": {
       "type": "string",
       "description": "ENS or Basename to resolve (e.g. vitalik.eth, jesse.base.eth). Give name or address."
      },
      "address": {
       "type": "string",
       "pattern": "^0x[0-9a-fA-F]{40}$",
       "description": "0x address for reverse lookup (ENS and Basename primary names). Give name or address."
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "description": "Horizon Pulse name resolution: forward (address, resolver, registry) or reverse (ENS and Basename primary names, verified forward). The example is a trimmed real response recorded from GET /api/demo/name-resolve at 2026-10-16T15:31Z UTC; live values differ on every call."
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/horizon-pulse-ens-and-basenames-resolver-c3a79271/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from horizonpulse.dev](https://www.zero.xyz/host/horizonpulse.dev/llms.txt)
