dropdown

Overview

  • Expiring and Deleted Domain's WHOIS API
    Our Expiring and Deleted Domains API is a valuable tool that enables you to easily access and download lists of expiring or recently deleted domain names. This convenient feature allows you to effortlessly obtain the database files for expiring and dropped domains through either our billing dashboard or API.

Authorization

You can make authorized requests to our API by passing API key as a query parameter. To get your API key, login to our billing dashboard and get your API key! If your API key has been compromised, you can change it by clicking on reset button in billing dashboard.

Expiring and Deleted Domain's WHOIS API

API

GET https://files.whoisfreaks.com/v2/2021-01-12?apiKey=API_KEY&fileType=dropped
Copied
GET https://files.whoisfreaks.com/v2/2021-01-12?apiKey=API_KEY&fileType=expired
Copied

Input parameters: required

apiKey Get your API key from our billing dashboard.

date Required date for expiring/deleted-domains whois file . Date format should be (yyyy-MM-dd).

fileType Required whois fileType for Domainer subscription like expired|dropped.


Code Snippets


curl --location --request GET 'https://files.whoisfreaks.com/v2/2021-01-02?apiKey=6363653972fe4df89638c45db1acf016&fileType=dropped'





var request = require('request');
var options = {
    'method': 'GET',
    'url': 'https://files.whoisfreaks.com/v2/2021-01-02?apiKey=6363653972fe4df89638c45db1acf016&fileType=dropped',
    'headers': {
    }
};
request(options, function (error, response) {
    if (error) throw new Error(error);
    console.log(response.body);
});
    
    





    OkHttpClient client = new OkHttpClient().newBuilder()
  .build();
Request request = new Request.Builder()
  .url("https://files.whoisfreaks.com/v2/2021-01-02?apiKey=6363653972fe4df89638c45db1acf016&fileType=dropped")
  .method("GET", null)
  .build();
Response response = client.newCall(request).execute();





import http.client
conn = http.client.HTTPSConnection("files.whoisfreaks.com")
payload = ''
headers = {}
conn.request("GET", "/v2/2021-01-02?apiKey=6363653972fe4df89638c45db1acf016&fileType=dropped", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))





'https://files.whoisfreaks.com/v2/2021-01-02?apiKey=6363653972fe4df89638c45db1acf016&fileType=dropped',
 CURLOPT_RETURNTRANSFER => true,
 CURLOPT_ENCODING => '',
 CURLOPT_MAXREDIRS => 10,
 CURLOPT_TIMEOUT => 0,
 CURLOPT_FOLLOWLOCATION => true,
 CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
 CURLOPT_CUSTOMREQUEST => 'GET',
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;






require "uri"
require "net/http"

url = URI("https://files.whoisfreaks.com/v2/2021-01-02?apiKey=6363653972fe4df89638c45db1acf016&fileType=dropped")

https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true

request = Net::HTTP::Get.new(url)

response = https.request(request)
puts response.read_body






var requestOptions = {
method: 'GET',
redirect: 'follow'
};

fetch("https://files.whoisfreaks.com/v2/2021-01-02?apiKey=6363653972fe4df89638c45db1acf016&fileType=dropped", requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));




var client = new RestClient("https://files.whoisfreaks.com/v2/2021-01-02?apiKey=6363653972fe4df89638c45db1acf016&fileType=dropped");
client.Timeout = -1;
var request = new RestRequest(Method.GET);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);




package main

import (
    "fmt"
    "net/http"
    "io/ioutil"
)

func main() {

    url := "https://files.whoisfreaks.com/v2/2021-01-02?apiKey=6363653972fe4df89638c45db1acf016&fileType=dropped"
    method := "GET"

    client := &http.Client {
    }
    req, err := http.NewRequest(method, url, nil)

    if err != nil {
    fmt.Println(err)
    return
    }
    res, err := client.Do(req)
    if err != nil {
    fmt.Println(err)
    return
    }
    defer res.Body.Close()

    body, err := ioutil.ReadAll(res.Body)
    if err != nil {
    fmt.Println(err)
    return
    }
    fmt.Println(string(body))
}




CURL *curl;
CURLcode res;
curl = curl_easy_init();
if(curl) {
  curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "GET");
  curl_easy_setopt(curl, CURLOPT_URL, "https://files.whoisfreaks.com/v2/2021-01-02?apiKey=6363653972fe4df89638c45db1acf016&fileType=dropped");
  curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
  curl_easy_setopt(curl, CURLOPT_DEFAULT_PROTOCOL, "https");
  struct curl_slist *headers = NULL;
  curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
  res = curl_easy_perform(curl);
}
curl_easy_cleanup(curl);




import Foundation
#if canImport(FoundationNetworking)
import FoundationNetworking
#endif

var semaphore = DispatchSemaphore (value: 0)

var request = URLRequest(url: URL(string: "https://files.whoisfreaks.com/v2/2021-01-02?apiKey=6363653972fe4df89638c45db1acf016&fileType=dropped")!,timeoutInterval: Double.infinity)
request.httpMethod = "GET"

let task = URLSession.shared.dataTask(with: request) { data, response, error in
    guard let data = data else {
    print(String(describing: error))
    semaphore.signal()
    return
    }
    print(String(data: data, encoding: .utf8)!)
    semaphore.signal()
}

task.resume()
semaphore.wait()



Response

Download sample of expired whois files from here expired_sample.csv.gz
Download sample of dropped whois files from here dropped_sample.csv.gz

CSV file Format

    num,domain_name,query_time,create_date,update_date,expiry_date,domain_registrar_id,domain_registrar_name, domain_registrar_whois, domain_registrar_url,registrant_name,registrant_company,registrant_address,registrant_city,registrant_state,registrant_zip,registrant_country_code,registrant_country,registrant_email,registrant_phone,registrant_fax, administrative_name, administrative_company, administrative_address, administrative_city,administrative_state,administrative_zip,administrative_country_code,administrative_country,administrative_email,administrative_phone,administrative_fax, technical_name,technical_company,technical_address,technical_city,technical_state,technical_zip,technical_country_code,technical_country,technical_email,technical_phone,technical_fax, billing_name,billing_company,billing_address,billing_city,billing_state,billing_zip,billing_country_code,billing_country,billing_email,billing_phone,billing_fax, name_server_1,name_server_2,name_server_3,name_server_4,domain_status_1,domain_status_2,domain_status_3,domain_status_4,reseller_name,reseller_email,reseller_phone
1,"changesparks.com","2019-11-25 15:46:18","2019-11-24","2019-11-24","2020-11-24","839","Realtime Register B.V.","whois.yoursrs.com","http://www.realtimeregister.com","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","REDACTED FOR PRIVACY","","REDACTED FOR PRIVACY","NETHERLANDS","","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","","","","","","","","","","","ns4.firstfind.nl","ns5.firstfind.net","ns3.firstfind.nl","","clientTransferProhibited","ok","","","","",""
2,"charlesjonesway.com","2019-11-25 14:18:34","2019-11-24","2019-11-24","2020-11-24","","Hosting Concepts B.V. dba Openprovider","whois.registrar.eu","http://www.openprovider.com","REDACTED FOR PRIVACY","Whois Privacy Protection Foundation","","REDACTED FOR PRIVACY","Zuid-Holland","REDACTED FOR PRIVACY","NETHERLANDS","","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","","","","","","","","","","","ns1.sav.com","ns2.sav.com","","","clientTransferProhibited","","","","","",""
3,"comaluminium.com","2019-11-25 16:01:25","2019-11-24","2019-11-24","2020-11-24","","Hosting Concepts B.V. dba Openprovider","whois.registrar.eu","http://www.openprovider.com","REDACTED FOR PRIVACY","Whois Privacy Protection Foundation","","REDACTED FOR PRIVACY","Zuid-Holland","REDACTED FOR PRIVACY","NETHERLANDS","","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","","","","","","","","","","","ns1.sav.com","ns2.sav.com","","","clientTransferProhibited","","","","","",""
4,"compiledhealth.com","2019-11-25 17:21:00","2019-11-24","2019-11-24","2020-11-24","","Hosting Concepts B.V. dba Openprovider","whois.registrar.eu","http://www.openprovider.com","REDACTED FOR PRIVACY","Whois Privacy Protection Foundation","","REDACTED FOR PRIVACY","Zuid-Holland","REDACTED FOR PRIVACY","NETHERLANDS","","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","","REDACTED FOR PRIVACY","REDACTED FOR PRIVACY","","","","","","","","","","","","ns1.sav.com","ns2.sav.com","","","clientTransferProhibited","","","" ,"","",""       
    
            

HTTP Error Codes

Below mentioned possible type of error and desc.

HTTP Code
Error Message
400 Please pass apiKey param value 400 Please pass date param value (date format:yyyy-MM-dd) 400 Please pass fileType param value 404 fileType not found. Please visit documentation 401 Api record not found. [For Technical Support: support@whoisfreaks.com] 401 Provided API key is inactive. [For Technical Support: support@whoisfreaks.com] 401 Please Buy Domainer package. [For Technical Support: support@whoisfreaks.com] 401 Your Domainer package plan is inactive. [For Technical Support: support@whoisfreaks.com] 413 Please upgrade your plans.This Plan does not have to access to download file. [For Technical Support: support@whoisfreaks.com] 404 File is not available of this date. Please contact at support@whoisfreaks.com 401 You cannot download file, as requested file for date(2022-09-10) is older than your subscription start date(2022-09-15). [For Technical Support: support@whoisfreaks.com] 401 You have exceeded the download limit of 20000 [For Technical Support: support@whoisfreaks.com]

Whois Files Status API

API

GET https://files.whoisfreaks.com/v2/status
Copied

Response

                    
{
    "expired": {
        "lastUpdate": "2022-11-11",
        "availableFrom": "2022-04-01"
    },
    "gtld": {
        "lastUpdate": "2022-10-12",
        "availableFrom": "2022-04-01"
    },
    "dropped": {
        "lastUpdate": "2022-10-12",
        "availableFrom": "2022-04-01"
    },
    "database_updates": [
        {
            "dailyBaseAvailable_From": "2022-06-22",
            "dailyBaseLastUpdate": "2022-10-12"
        },
        {
            "weeklyBaseAvailable_From": "2022-07-04",
            "weeklyBaseLastUpdate": "2022-10-10"
        },
        {
            "monthlyBaseAvailable_From": "2022-07-01",
            "monthlyBaseLastUpdate": "2022-10-01"
        }
    ],
    "cctld": [
        {
            "monthlyBaseAvailableFrom": "2022-06-08",
            "monthlyBaseLastUpdate": "2022-09-20"
        },
        {
            "dailyBaseLastUpdate": "2022-10-12",
            "dailyBaseAvailableFrom": "2022-04-01"
        }
    ]
}
                    
            


FAQs

What type of information Expired domains whois files provide?

Expiring Domains are domains that have reached the end of their registration period and are currently in a state of pending deletion or redemption.



Which TLDs Whois included in Expired/dropped domains whois files?

Visit our current supported TLD's list page.



At what time do you generate your expired/dropped whois files?

Expired domains and deleted domains files are ready for download at 23:45 UTC.



Do you have notification service after generating whois files?

Yes, we inform you with an email when any type (newly - cctld - expired - dropped | dailydbUpdate - weeklydbupdate - monthlydbupdate) of file is generated.