Quickstart

Get up and running with RobotDomainSearch in under 5 minutes.

Make Your First Request

No API key required for basic checks. Try it now:

curl "https://api.robotdomainsearch.com/check?name=example&tld=com"

Response:

{
  "name": "example",
  "results": [
    {
      "domain": "example.com",
      "tld": "com",
      "available": false,
      "status": ["active"],
      "premium": false,
      "source": "rdap",
      "checkedAt": "2025-02-10T12:00:00Z",
      "responseMs": 180
    }
  ],
  "totalMs": 180,
  "timestamp": "2025-02-10T12:00:00Z"
}

Check Multiple TLDs

Omit the tld parameter to check the Top 20 TLDs, or specify multiple:

# Top 20 TLDs (default)
curl "https://api.robotdomainsearch.com/check?name=mycoolstartup"

# Specific TLDs
curl "https://api.robotdomainsearch.com/check?name=mycoolstartup&tld=com,io,dev,ai"

# By category
curl "https://api.robotdomainsearch.com/check?name=mycoolstartup&category=technology"

List Available TLDs

See all 511 supported top-level domains organized by category:

curl "https://api.robotdomainsearch.com/tlds"

Response:

{
  "total": 511,
  "categories": [
    {
      "name": "top20",
      "label": "Top 20",
      "description": "The most essential domain extensions",
      "count": 20,
      "tlds": ["com", "net", "org", "io", "ai", "co", "dev", "app", "xyz", "me", "..."]
    }
  ],
  "all": ["academy", "accountant", "...", "xyz", "yoga"]
}

Find where to register an available domain:

curl "https://api.robotdomainsearch.com/register?domain=mycoolstartup.com"

Response:

{
  "domain": "mycoolstartup.com",
  "registrars": [
    {
      "name": "Porkbun",
      "slug": "porkbun",
      "url": "https://porkbun.com/checkout/search?q=mycoolstartup.com",
      "estimatedPrice": 9.73
    },
    {
      "name": "Namecheap",
      "slug": "namecheap",
      "url": "https://www.namecheap.com/domains/registration/results/?domain=mycoolstartup.com"
    },
    {
      "name": "GoDaddy",
      "slug": "godaddy",
      "url": "https://www.godaddy.com/domainsearch/find?domainToCheck=mycoolstartup.com"
    }
  ],
  "timestamp": "2025-02-10T12:00:00Z"
}

Check ENS Names

RobotDomainSearch also supports ENS (Ethereum Name Service) names via a separate API:

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

Response:

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

Code Examples

Python

import requests

response = requests.get(
    "https://api.robotdomainsearch.com/check",
    params={"name": "mycoolstartup", "tld": "com,io,dev"}
)
data = response.json()

print(f"Checked: {data['name']} ({data['totalMs']}ms)")
for result in data["results"]:
    status = "" if result["available"] else ""
    premium = " [PREMIUM]" if result["premium"] else ""
    print(f"{status} {result['domain']}{premium}")

JavaScript

const response = await fetch(
  "https://api.robotdomainsearch.com/check?name=mycoolstartup&tld=com,io,dev"
);
const data = await response.json();

console.log(`Checked: ${data.name} (${data.totalMs}ms)`);
data.results.forEach(result => {
  const status = result.available ? "" : "";
  const premium = result.premium ? " [PREMIUM]" : "";
  console.log(`${status} ${result.domain}${premium}`);
});

Go

resp, err := http.Get("https://api.robotdomainsearch.com/check?name=mycoolstartup&tld=com,io,dev")
if err != nil {
    log.Fatal(err)
}
defer resp.Body.Close()

var data struct {
    Name    string `json:"name"`
    Results []struct {
        Domain    string `json:"domain"`
        Available bool   `json:"available"`
        Premium   bool   `json:"premium"`
    } `json:"results"`
    TotalMs int64 `json:"totalMs"`
}
json.NewDecoder(resp.Body).Decode(&data)

fmt.Printf("Checked: %s (%dms)\n", data.Name, data.TotalMs)

Next Steps