Daily Deleted Domain Names Feed
The Domains That Left the Registry in the Last Day.
A deleted domain can be registered by whoever wants it next. This feed delivers the domains deleted in the last day as one file, so your team can see when a name it depends on, watches or is investigating becomes available.
Request
GET /
daily-deleted-domains
Your lists checked against the file
Your portfolio
acme-old-campaign.example
: can be registered by whoever wants it next
Your watchlists
acrne.example (a lookalike of acme)
: takedown ticket closed
Your investigations
login-acme.example
: date stamped, WHOIS History and DNS History keep what it was
Download the Day’s Deletions as One File.
One request returns the file’s metadata and a link valid for an hour. Ask for CSV if the file goes straight into a spreadsheet or a shell pipeline.
| Parameter | Type | Description | |
|---|---|---|---|
file_ | string | Optional | json (default) or csv. |
Request
curl "https://api.deepinfo.com/v1/feeds/daily-deleted-domains?file_format=csv" \
-H "apikey: YOUR_API_KEY"import requests
meta = requests.get(
"https://api.deepinfo.com/v1/feeds/daily-deleted-domains",
params={"file_format": "csv"},
headers={"apikey": "YOUR_API_KEY"},
).json()
r = requests.get(meta["download_url"])
r.raise_for_status()
open("deleted.csv", "wb").write(r.content)import { writeFile } from 'node:fs/promises'
const meta = await (await fetch(
'https://api.deepinfo.com/v1/feeds/daily-deleted-domains?file_format=csv',
{ headers: { apikey: 'YOUR_API_KEY' } }
)).json()
const file = await fetch(meta.download_url)
await writeFile('deleted.csv', await file.text())
Response
{
"download_url": "https://…/<pre-signed link, valid for 1 hour>",
"file_format": "csv",
"file_size": …,
"file_update_time": "2026-09-22T10:00:00Z",
"line_count": …
}
Check Your Lists Against the File.
Your portfolio
Names You Let Lapse
Old links, forgotten mail addresses and allow-list entries still point at a domain after it is deleted, and at whoever registers it next. Catch your own names in the file while you can still decide what to do about them.
Your watchlists
Lookalikes That Went Away
Close takedown tickets for impersonating domains that were deleted, and keep the names on watch in case someone registers them again.
Your investigations
Infrastructure That Disappeared
A campaign domain that gets deleted is still evidence. The day it appears in the file dates the deletion, and WHOIS History and DNS History keep what the domain used to be.
Match the File Against Your Domains.
Keep a plain list of the domains your organization registers or has used, including retired ones. Each time a new file lands, intersect the two.
The script reads all fields of each row, so it works without assumptions about the column layout. Any hit is a name someone else can now register.
import csv
ours = {
line.strip().lower()
for line in open("our-domains.txt")
if line.strip()
}
with open("deleted.csv", newline="") as f:
for row in csv.reader(f):
cells = {v.strip().lower() for v in row}
for hit in ours & cells:
print("deleted:", hit)
Details Before You Schedule It.
| Window | The domains deleted in the last day, as of the file_ in the response. Store that timestamp with each run. |
|---|---|
| Other files | Join with the registered and updated daily files to follow a domain from registration to deletion. |
| Link | download_ is pre-signed and valid for one hour. Request a new one if your job starts later. |
| Errors | Gateway and application errors each follow a documented format. See errors. |
See This Data at Work in the Platform
Brand Risk Protection matches these newly seen domains against your brand names, down to letters from other alphabets, and keeps the evidence for a takedown.
Questions About Daily Deleted Domain Names Feed
Can we see a lapse coming before the deletion?
Yes, from the expiry date. Poll Domain WHOIS for the domains you depend on, or sort Domain Search results on domain.whois.expiry_ to see the soonest expiries first.
Is there a real-time version?
Not in the public API: deletions arrive as this daily file.
Can we check for a new file without requesting a link?
Yes. GET / lists each feed’s files with their format, size, line count and update time, and creates no download link.
How is the daily feed priced?
Data feeds are priced on their own, by volume and frequency, separately from the platform. See Data & API pricing.
Can we use the file inside our own product?
How the data can be used and shown in your product is part of the agreement. Talk to the data team about your case.
Know When a Name You Rely on Becomes Available.
We set up access to the daily feed and help your team wire it into the checks that matter to you.