GET /check

ENS: Check Availability

Learn more: ENS API — marketing overview, live demo, pricing tiers, and use cases.

Check if an ENS (Ethereum Name Service) name is available for registration and get pricing information.

Base URL: https://ens.robotdomainsearch.com — The ENS API is a separate service from the main RobotDomainSearch API.

Endpoint

GET https://ens.robotdomainsearch.com/check

Parameters

Parameter Type Required Description
name string Yes ENS name to check (without .eth suffix)

Request

curl "https://ens.robotdomainsearch.com/check?name=vitalik"

Response (Name Taken)

{
  "name": "vitalik.eth",
  "available": false,
  "owner": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
  "resolver": "0x231b0Ee14048e9dCcD1d247744d114a4EB5E8E63",
  "responseMs": 450,
  "source": "rpc",
  "checkedAt": "2025-02-10T12:00:00Z"
}

Response (Name Available)

{
  "name": "myuniqueensname.eth",
  "available": true,
  "registrationPrice": {
    "wei": "158548959918",
    "eth": "0.000000158548959918",
    "usdEstimate": 5.00
  },
  "responseMs": 320,
  "source": "rpc",
  "checkedAt": "2025-02-10T12:00:00Z"
}

Response Fields

Field Type Description
name string Full ENS name with .eth suffix
available boolean Whether the name is available for registration
owner string Ethereum address of current owner (only if taken)
resolver string Resolver contract address (only if taken)
registrationPrice object Registration cost info (only if available)
registrationPrice.wei string Annual cost in wei
registrationPrice.eth string Annual cost in ETH
registrationPrice.usdEstimate number Estimated annual cost in USD
responseMs number Response time in milliseconds
source string Data source (rpc or rpc+cache)
checkedAt string ISO 8601 timestamp

Registration Pricing

ENS uses tiered pricing based on name length:

Name Length Annual Cost (USD)
3 characters $640/year
4 characters $160/year
5+ characters $5/year

Note: The wei and eth fields reflect the on-chain rent cost when available. The usdEstimate is based on ENS’s standard pricing tiers.

Errors

Code Error Description
400 missing_parameter The name parameter is required
400 invalid_name Name must be 3-63 chars, lowercase alphanumeric with hyphens
500 check_failed Ethereum RPC error

Code Examples

curl

curl "https://ens.robotdomainsearch.com/check?name=vitalik"

Python

import requests

response = requests.get(
    "https://ens.robotdomainsearch.com/check",
    params={"name": "vitalik"}
)
data = response.json()

if data["available"]:
    price = data["registrationPrice"]["usdEstimate"]
    print(f"{data['name']} is available! (~${price}/year)")
else:
    print(f"{data['name']} is taken by {data['owner']}")

JavaScript

const response = await fetch(
  "https://ens.robotdomainsearch.com/check?name=vitalik"
);
const data = await response.json();

if (data.available) {
  console.log(`${data.name} is available! (~$${data.registrationPrice.usdEstimate}/year)`);
} else {
  console.log(`${data.name} is taken by ${data.owner}`);
}

Notes

  • Names are normalized to lowercase with the .eth suffix added automatically
  • The .eth suffix is stripped if provided (you can pass vitalik or vitalik.eth)
  • ENS names must be at least 3 characters
  • Results are cached for improved performance
  • The ETH price fields reflect on-chain data when available