Skip to content

Developer workspace API v1

API access

One connection to the EED domain index. All your keys in one place.

Read the documentation

Your access

Checking access...

This page is available to Agency users only.

API keys — Manage keys
Searches remaining — of 1,000 per UTC day
One account. All your integrations.

New API key

Give each integration its own key so you can manage access independently.

Shown once. Store securely.
Restrict access by IP Optional

Leave blank to allow any IP. Add your trusted addresses or networks to limit where this key can be used.

Manage API keys

Your connected tools, all in one place. Revoke a key to disable it, or delete it permanently.

Loading API access...

Build with EED

Make your first request.

Two response formats. The same live domain index.

JSON /api/v1/domain-search.php?q=cheese&pageSize=100&page=1
Plain text /api/v1/domain-search.txt.php?keyword=cheese&pageSize=1000&page=1

Use the same filter names as the Domains page, including source, provider, TLD, metric minimums, binary domain filters, and sort/dir. On the JSON endpoint, add includeRegisterLinks=1 to a query string when you want registrar links for expired domains. Registration-link options are not supported by the text endpoint.

Authentication

Send your API key using either header below, not both. Keep it on your server; never put it in a URL or browser code.

Authorization: Bearer eed_live_... X-EED-API-Key: eed_live_... curl -H "Authorization: Bearer eed_live_..." "https://easyexpireddomains.com/api/v1/domain-search.php?q=finance&pageSize=100"

Endpoints

JSON
/api/v1/domain-search.php
Plain text
/api/v1/domain-search.txt.php returns one domain per line.
Metadata
API metadata publishes current limits and supported values.

Both search endpoints accept GET query parameters or a POST body using application/json or application/x-www-form-urlencoded. For POST, put all search parameters in the body, not the URL. In a JSON body, use numbers for numeric filters and pagination, strings for text and enum values, and a boolean for includeRegisterLinks (JSON endpoint only), for example "includeRegisterLinks": true.

Core Parameters

All search parameters below are optional. Only a valid Agency API key is required for a search, supplied in an authentication header. You do not need a keyword, filter, sort, or page number. Metadata and OpenAPI downloads require no key.

With no parameters, the API searches all inventory without keyword, provider, TLD, or metric restrictions, using source=all, sort=quality, and page=1. Page size defaults to 100 for JSON or 1,000 for text. If dir is omitted, the API uses asc for domain and length, or desc for every other sort. Registration links are off by default.

Omit options you do not need; do not send null or empty placeholders. A GET can have no query string. POST still requires a body and a supported Content-Type; use Content-Type: application/json with {} for a default search.

q or keyword
Search text. Exact domains such as example.com are matched directly.
pageSize or limit
JSON defaults to 100 and allows 500; text defaults to 1000 and allows 10000.
page
One-based page number within the 10,000-result search window. JSON returns hasMore, nextPage, and truncated.
source or type
all, auction, closeout (GoDaddy closeouts), bin, expiring, or expired.
provider
afternic, atom, auda, cnnic, domainlore, dropcatch, dynadot, gname, godaddy, internetnz, internetstiftelsen, namecheap, namesilo, nominet, registro-it, registry-hu, registry-trabis, sav, sedo, snapnames, spaceship, or expired-import.
tld
One to 50 TLDs without leading dots, separated by commas, for example com,net,co.uk. The complete filter must be at most 512 characters.
sort / dir
Sort by quality, domain, source, majTF, majCF, majBL, majRD, mozDA, mozPA, ddLinksIn, ddPages, age, length, semTraffic, semRank, expires, or price. Direction is asc or desc.

Filter Parameters

Every filter is optional; omitted filters impose no restriction. Minimum and maximum filters can be used independently. There are two conditional requirements: supplying ttfTopic requires minTTF, and supplying registrar requires includeRegisterLinks=true. The reverse is not required: minTTF works without a topic, and registration links work without a registrar selection (the current default registrar is used).

Majestic
minTF, maxTF, minCF, maxCF, minBL, minRD, minTTF, ttfTopic, minMajEdu, minMajGov, minMajIPs. ttfTopic requires minTTF.
Moz
minDA, maxDA, minPA, maxPA, maxSpam, minMozRank, minMozTrust.
DomDetailer
minDDLinks, minDDPages, minDDDofollow, minDDEdu, minDDGov.
Semrush
minSemTraffic, minSemRank, maxSemRank, minSemLinks, minSemKeywords.
Domain shape
minAge, maxAge, minNameLength, maxNameLength, containsLetters, containsNumbers, containsHyphen. Use yes or no for contains filters.
Market data
minPrice, maxPrice, minBids, minAuctionTraffic, minValuation, minRevenue, auctionType, auctionEnd, godaddyListingType, specialOption.
Auction ending
auctionEnd=today selects auctions ending from now until the next midnight UTC. auctionEnd=week selects auctions ending from now until next Monday at 00:00 UTC, not the next seven days. The end boundary is excluded. Use with source=auction or source=all (or omit source); do not combine with closeout filters or specialOption=expiring_today.
Special options
specialOption=new_today means added during the previous 24 hours. specialOption=expiring_today selects expiring inventory in the next 24 hours, also including date-only midnight entries for today or tomorrow, in UTC.
Links (JSON only)
includeRegisterLinks=1 adds registrar links for expired domains. registrar requires that option; supported values are published by /api/v1/meta.php. Neither option is accepted by the text endpoint.

Example Queries

/api/v1/domain-search.php?keyword=finance&source=expired&tld=com,net,co.uk&minTF=10&minRD=25&sort=length&dir=asc&pageSize=500&page=1 /api/v1/domain-search.txt.php?provider=gname&source=bin&maxPrice=250&containsHyphen=no&limit=10000

Validation, Limits, and Errors

Malformed JSON and duplicate parameters are rejected with 400. Unknown, invalid, or contradictory search parameters are rejected with 422 validation_failed; they are never silently ignored. Successful responses include X-Request-ID, short rate-limit, X-EED-Daily-*, pagination, and truncation headers. A 429 response includes Retry-After. The text endpoint returns one plain-text error line with a non-2xx status.

Requests are limited by key, Agency member, client IP, and total API capacity. Only one search may run at a time for one member, so creating more keys does not multiply load. Requests that reach the search backend also have a separate abuse-safety ceiling published by /api/v1/meta.php; backend failures count only toward that ceiling, not the successful-search allowance.

Each Agency account can run 1,000 successful API searches per UTC day. The allowance is shared by all of that member's API keys and is separate from website searching. JSON and plain-text requests each use one search per successful page, including an empty page; rejected or failed requests do not use the allowance. Read the current limit and remaining usage from API responses rather than embedding the number in a client.

Public metadata provides configured limits, not your remaining allowance. Read your usage from the JSON response's credits object or the X-EED-Daily-* search-response headers. truncated=true means the result window has limited the search and additional matches may exist; truncated=false on an earlier page does not prove all matches fit within the window.

Result Semantics and Links

Response sourceType is always auction, bin, expiring, or expired. The request value source=closeout is a convenient selector for GoDaddy closeout auction inventory; matching results still report sourceType=auction. Use provider.key for a stable provider identifier and provider.name for display only.

Expiring inventory can retain recently passed drop events during a 24-hour grace period while feeds update. Expired inventory is not a live availability check; confirm availability with a registrar before purchasing.

Monetary listing, valuation, and monthly parking-revenue fields are in USD. Times are UTC. Provider listing and optional registrar URLs can contain EED attribution or affiliate parameters; following one may generate commission for EED without changing the price you pay.

Support, Incidents, and Versioning

When Agency access expires, API searches stop. Signed-in owners can still revoke or delete existing keys. Unrevoked keys may work again when a verified Agency membership resumes. Revoke keys to disable them, or delete them permanently from your key list. Usage and security records are retained. For account deletion, contact support to remove retained keys and associated account records.

This is a server-to-server API and does not enable browser CORS. Keep keys out of browser code. For help, email support@easyexpireddomains.com with the X-Request-ID, endpoint, and UTC time, but never send an API key.

During a service incident, updates will be published on this API access page. Agency members can also report an incident through support@easyexpireddomains.com.

/api/v1/meta.php publishes the current configured limits and whether API access is enabled; it is capability metadata, not an uptime guarantee. Additive fields and provider values can be introduced within v1, so clients should tolerate unknown response fields and enum values. Breaking changes use a new major-version path, with deprecation notices published here before removal except where an urgent security issue requires faster action.