# skills.onesource.io ENS Resolver

> skills.onesource.io ENS Resolver is a paid API for AI agents from skills.onesource.io, paid per call via x402, $0.005000/call, status unknown (last checked 2026-10-10).

Resolves a .eth ENS name to its Ethereum address (and resolver info), or resolves an Ethereum address to its primary .eth name, via eth_call on a live Ethereum RPC.

## Facts

- Endpoint: GET https://skills.onesource.io/api/chain/ens/nick.eth?utm_source=zero.xyz
- Price: $0.005000/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-10
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/skills-onesource-io-3a638ace
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_CfCUVn7da5MQMLZzz6i4c

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 skills-onesource-io-3a638ace
```

Example prompt: What Ethereum address does nick.eth resolve to on mainnet? Also tell me the resolver contract and whether it's a forward or reverse resolution.

## When to prefer this

Use this endpoint when you need to resolve ENS names to Ethereum addresses or vice versa on a live Ethereum RPC without running your own node. Ideal for agents that need to humanize wallet addresses, verify ENS ownership, or look up on-chain identity. Supports multiple networks including mainnet, Sepolia, Base, and Avalanche. Prefer this over general-purpose Ethereum RPC calls when you only need ENS resolution with structured output.

## Known failure modes

- ENS name does not exist or has no resolver — returns null or error
- Address has no primary ENS name set — reverse resolution returns empty
- Invalid input format (not a valid .eth name or 0x address) — schema validation error
- Unsupported network specified — enum validation error
- RPC node unavailable or rate-limited — upstream timeout or 5xx error
- Payment not provided or insufficient (x402 payment required)

## How this service works

ENS resolve — turn a .eth name into an address, or an address into its primary .eth name, via eth_call on OneSource live Ethereum RPC

## Output

Returns a JSON object containing the resolved ENS name, the Ethereum address, the resolver contract address, and boolean flags indicating whether the resolution was forward (name→address) or reverse (address→name). Also includes endpoint and request ID in metadata.

## Example request

```json
{}
```

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {},
 "description": "No body parameters required. The ENS name to resolve is embedded directly in the URL path (e.g. GET /api/chain/ens/nick.eth). The network may optionally be passed as a query parameter, but the JSON body should be empty.",
 "additionalProperties": false
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "data",
  "meta"
 ],
 "properties": {
  "data": {
   "type": "object",
   "required": [
    "name",
    "address",
    "resolver",
    "is_forward",
    "is_reverse"
   ],
   "properties": {
    "name": {
     "type": "string"
    },
    "address": {
     "type": "string"
    },
    "resolver": {
     "type": "string"
    },
    "is_forward": {
     "type": "boolean"
    },
    "is_reverse": {
     "type": "boolean"
    }
   }
  },
  "meta": {
   "type": "object",
   "required": [
    "endpoint",
    "request_id"
   ],
   "properties": {
    "endpoint": {
     "type": "string"
    },
    "request_id": {
     "type": "string"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/skills-onesource-io-3a638ace/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from skills.onesource.io](https://www.zero.xyz/host/skills.onesource.io/llms.txt)
