YepAPI
Domain Analysis

Domain Availability

Check domain availability in bulk — up to 50 domains per call. Detects premium names with pricing.

POST/v1/seo/domain/available
$0.02/call

Check whether one or many domains are available to register. Returns premium-name flags with registration and renewal pricing, plus ICANN and Early Access Program (EAP) fees.

Usage

const res = await fetch('https://api.yepapi.com/v1/seo/domain/available', {
  method: 'POST',
  headers: {
    'x-api-key': 'YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    domains: ['example.com', 'example.io', 'example.ai'],
  }),
});
const { data } = await res.json();
console.log(data.domains);
curl -X POST https://api.yepapi.com/v1/seo/domain/available \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"domains": ["example.com", "example.io", "example.ai"]}'

Request Body

Provide either domain (single) or domains (array of up to 50).

ParameterTypeRequiredDescriptionDefault
domainstringOne of domain / domainsSingle domain to check (no protocol, e.g. example.com)
domainsstring[]One of domain / domainsUp to 50 domains to check in one call

Response

{
  "ok": true,
  "data": {
    "domains": [
      {
        "domain": "example.com",
        "available": false,
        "isPremium": false,
        "premiumRegistrationPrice": 0,
        "premiumRenewalPrice": 0,
        "icannFee": 0,
        "eapFee": 0
      },
      {
        "domain": "some-unique-name-xyz-123.com",
        "available": true,
        "isPremium": false,
        "premiumRegistrationPrice": 0,
        "premiumRenewalPrice": 0,
        "icannFee": 0.18,
        "eapFee": 0
      },
      {
        "domain": "cars.ai",
        "available": true,
        "isPremium": true,
        "premiumRegistrationPrice": 2450,
        "premiumRenewalPrice": 95,
        "icannFee": 0,
        "eapFee": 0
      }
    ]
  }
}

Response Fields

FieldTypeDescription
okbooleanWhether the request succeeded
data.domainsarrayOne entry per input domain, in the same order
data.domains[].domainstringThe checked domain
data.domains[].availablebooleantrue if the domain can be registered right now
data.domains[].isPremiumbooleantrue if the upstream registry classifies the domain as a premium name
data.domains[].premiumRegistrationPricenumberRegistration price in USD for premium domains (0 otherwise)
data.domains[].premiumRenewalPricenumberRenewal price in USD for premium domains (0 otherwise)
data.domains[].icannFeenumberICANN fee in USD (0 if none)
data.domains[].eapFeenumberEarly Access Program fee in USD (0 if none)
data.domains[].errorstring?Only present when an individual domain check failed (e.g. unsupported TLD)

Errors

CodeHTTPWhen
VALIDATION_ERROR400Neither domain nor domains provided, or more than 50 domains sent
UPSTREAM_ERROR502Upstream registry connectivity problem
Under the Hood

Real-time availability via a registrar's domain-check API.

On this page