_done Ens API

The ens API from _done — 1 operation(s) for ens.

Operations 1

POST /resolve Look up an ENS name or address and get back the matching one. #

Documentation

📖
Documentation
https://underscoredone.com/asn_lookup/
📖
APIReference
https://underscoredone.com/asn_lookup/
📖
Documentation
https://underscoredone.com/bimi_checker/
📖
APIReference
https://underscoredone.com/bimi_checker/
📖
Documentation
https://underscoredone.com/cors_header_checker/
📖
APIReference
https://underscoredone.com/cors_header_checker/
📖
Documentation
https://underscoredone.com/cpi_report_us/
📖
APIReference
https://underscoredone.com/cpi_report_us/
📖
Documentation
https://underscoredone.com/curl_http_request/
📖
APIReference
https://underscoredone.com/curl_http_request/
📖
Documentation
https://underscoredone.com/directory_submission_lite/
📖
APIReference
https://underscoredone.com/directory_submission_lite/
📖
Documentation
https://underscoredone.com/dmarc_lookup/
📖
APIReference
https://underscoredone.com/dmarc_lookup/
📖
Documentation
https://underscoredone.com/dns_whois_lookup/
📖
APIReference
https://underscoredone.com/dns_whois_lookup/
📖
Documentation
https://underscoredone.com/domain_age_checker/
📖
APIReference
https://underscoredone.com/domain_age_checker/
📖
Documentation
https://underscoredone.com/domain_availability_checker/
📖
APIReference
https://underscoredone.com/domain_availability_checker/
📖
Documentation
https://underscoredone.com/ens_resolver/
📖
APIReference
https://underscoredone.com/ens_resolver/
📖
Documentation
https://underscoredone.com/hackernews_data/
📖
APIReference
https://underscoredone.com/hackernews_data/
📖
Documentation
https://underscoredone.com/hash_hmac/
📖
APIReference
https://underscoredone.com/hash_hmac/
📖
Documentation
https://underscoredone.com/http_header_checker/
📖
APIReference
https://underscoredone.com/http_header_checker/
📖
Documentation
https://underscoredone.com/http_status_checker/
📖
APIReference
https://underscoredone.com/http_status_checker/
📖
Documentation
https://underscoredone.com/json_suite/
📖
APIReference
https://underscoredone.com/json_suite/
📖
Documentation
https://underscoredone.com/leetspeak_translator/
📖
APIReference
https://underscoredone.com/leetspeak_translator/
📖
Documentation
https://underscoredone.com/mortgage_amortization/
📖
APIReference
https://underscoredone.com/mortgage_amortization/
📖
Documentation
https://underscoredone.com/ocr/
📖
APIReference
https://underscoredone.com/ocr/
📖
Documentation
https://underscoredone.com/port_scanner/
📖
APIReference
https://underscoredone.com/port_scanner/
📖
Documentation
https://underscoredone.com/qr_code_generator/
📖
APIReference
https://underscoredone.com/qr_code_generator/
📖
Documentation
https://underscoredone.com/screenshots/
📖
APIReference
https://underscoredone.com/screenshots/
📖
Documentation
https://underscoredone.com/seo_data_extractor/
📖
APIReference
https://underscoredone.com/seo_data_extractor/
📖
Documentation
https://underscoredone.com/shopify_ai_rank_checker/
📖
APIReference
https://underscoredone.com/shopify_ai_rank_checker/
📖
Documentation
https://underscoredone.com/sitemap_url_extractor/
📖
APIReference
https://underscoredone.com/sitemap_url_extractor/
📖
Documentation
https://underscoredone.com/url_uptime_checker/
📖
APIReference
https://underscoredone.com/url_uptime_checker/

Specifications

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/done-ens-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

done-ens-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Resolver Ens API
  description: Look up an ENS name or an Ethereum address and get back the matching one, automatically figuring out which direction you need.
  version: 1.0.0
  contact:
    name: _done
    url: https://forms.gle/5KzuSFH7p8hHtDmz7
    email: info@underscoredone.com
  x-openapi-url: https://ens-resolver.underscoredone.com/openapi.json
  x-logo:
    url: https://underscoredone.com/logo.png
    altText: _done
  x-guidance: 'Send the query field with either an ENS name ending in .eth or a 0x Ethereum address. The service auto-detects direction: names resolve forward to addresses, addresses resolve backward to their primary ENS name. If nothing is found, resolved will be false and address or name may be null, but this is not an error. Only malformed input causes a 400 error.'
  x-ai-instructions: 'Send the query field with either an ENS name ending in .eth or a 0x Ethereum address. The service auto-detects direction: names resolve forward to addresses, addresses resolve backward to their primary ENS name. If nothing is found, resolved will be false and address or name may be null, but this is not an error. Only malformed input causes a 400 error.'
  x-provider: _done — single-purpose utility APIs for developers and AI agents. Pay per call with USDC on Base Mainnet or Solana Mainnet.
  x-pricing:
    model: pay-per-call
    currency: USDC
    network: Base Mainnet or Solana Mainnet
    price: $0.01
  x-keywords:
  - network
  - ens
  - resolver
  - ethereum
  - wallet address
  - ens name lookup
  - blockchain identity
  - reverse resolve
  - utility
  - api
  - ai-agent
  - pay-per-call
  - usdc
  - x402
  x-category: ens
  x-provider-url: https://underscoredone.com
  x-agentcash-auth:
    mode: paid
  x-402:
    price: $0.01
    network: eip155:8453
    asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
    pay_to: '0xE9740820225B3918b4ddd1292C7cA4Ca0e2C2F08'
    facilitator: https://api.cdp.coinbase.com/platform/v2/x402
    scheme: exact
    description: Look up an ENS name or an Ethereum address and get back the matching one, automatically figuring out which direction you need.
    mime_type: application/json
    networks:
    - network: eip155:8453
      asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
      pay_to: '0xE9740820225B3918b4ddd1292C7cA4Ca0e2C2F08'
    - network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp
      asset: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
      pay_to: 8ugAWAXDB8V18kiUrGZTq1oMvU3C6Fxs8hfC6rvzQT3b
servers:
- url: https://ens-resolver.underscoredone.com
  description: Production
tags:
- name: ens
paths:
  /resolve:
    post:
      tags:
      - ens
      summary: Look up an ENS name or address and get back the matching one.
      description: Look up an ENS name or address. Send a name like vitalik.eth to get its address, or send an address starting with 0x to get its friendly name, if it has one. If nothing matches, resolved will simply be false rather than an error.
      operationId: handler_resolve_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Request'
        required: true
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Response'
              examples:
                success:
                  summary: Successful response
                  value:
                    api_version: 1.0.0
        '422':
          description: Unprocessable — a required field is missing or the wrong type. Check the detail field for specifics.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: array
        '402':
          description: Payment required. Send a signed USDC payment on Base Mainnet or Solana Mainnet using the x402 protocol.
          headers:
            X-Payment-Response:
              description: x402 payment challenge — base64-encoded JSON with payment details.
              schema:
                type: string
        '400':
          description: Bad request — your input failed validation or could not be processed. Check the detail field for specifics.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
      x-ai-instructions: 'Send the query field with either an ENS name ending in .eth or a 0x Ethereum address. The service auto-detects direction: names resolve forward to addresses, addresses resolve backward to their primary ENS name. If nothing is found, resolved will be false and address or name may be null, but this is not an error. Only malformed input causes a 400 error.'
      x-guidance: 'Send the query field with either an ENS name ending in .eth or a 0x Ethereum address. The service auto-detects direction: names resolve forward to addresses, addresses resolve backward to their primary ENS name. If nothing is found, resolved will be false and address or name may be null, but this is not an error. Only malformed input causes a 400 error.'
      x-payment-info:
        price:
          fixed:
            mode: fixed
            currency: USD
            amount: '0.01'
        protocols:
        - x402: {}
components:
  schemas:
    Request:
      properties:
        query:
          type: string
          title: Query
          description: An ENS name like vitalik.eth, or an Ethereum address starting with 0x. The service automatically figures out which one you gave it.
      type: object
      required:
      - query
      title: Request
      example:
        query: vitalik.eth
    Response:
      properties:
        api_version:
          type: string
          title: Api Version
          description: The version of this service that produced the answer.
          default: 1.0.0
        query:
          type: string
          title: Query
          description: The exact text you sent in, cleaned of extra spaces.
        direction:
          type: string
          title: Direction
          description: 'Which way the lookup went: forward means a name was turned into an address, reverse means an address was turned into a name.'
        name:
          anyOf:
          - type: string
          - type: 'null'
          title: Name
          description: The ENS name that was found, or empty if none was found.
        address:
          anyOf:
          - type: string
          - type: 'null'
          title: Address
          description: The Ethereum address that was found, or empty if none was found.
        resolved:
          type: boolean
          title: Resolved
          description: True if a matching name or address was found, false if nothing was found.
      type: object
      required:
      - query
      - direction
      - resolved
      title: Response
      example:
        address: '0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045'
        api_version: 1.0.0
        direction: forward
        name: vitalik.eth
        query: vitalik.eth
        resolved: true
  securitySchemes:
    siwx:
      type: apiKey
      in: header
      name: SIGN-IN-WITH-X
      description: CAIP-122 wallet signature for repeat access after payment
x-payment-accepts:
- scheme: exact
  network: eip155:8453
  payTo: '0xE9740820225B3918b4ddd1292C7cA4Ca0e2C2F08'
  asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
- scheme: exact
  network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp
  payTo: 8ugAWAXDB8V18kiUrGZTq1oMvU3C6Fxs8hfC6rvzQT3b
  asset: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v