Logo Impending Doom!

monitoring the Domain registration and SSL cert expiration time for top one million websites


#916 · 👁️‍🗨️ certificate · 🕵️‍♂️ whois · 📷 archive · 🔗 visit site


🔒 Certificate Expiry in 389 days
🌐 Registration Expiry in 508 days
Last Check Nov 30 '23 at 19:24


Status Code 301
Response 548ms
Last Check Dec 02 '23 at 12:05


access-control-allow-headers accept, cache-control, content-type, authorization
access-control-allow-methods GET, POST, PUT, DELETE, OPTIONS
access-control-allow-origin https://academic.oup.com
connection close
content-length 152
content-security-policy frame-ancestors 'self'
content-type text/html; charset=UTF-8
date Sat, 02 Dec 2023 12:03:45 GMT
location http://www.oxfordjournals.org
server Microsoft-IIS/10.0
x-frame-options SAMEORIGIN
x-powered-by ASP.NET
x-scm-server-number SCM06WEB03


😱 Expiring Domains

GET /api/v1/domains/expiring

🔥 Expired Domains

GET /api/v1/domains/expired
Optional: ?top=n (default 1000)

Query by Expiry Date

GET /api/v1/domains?from={DATE}&to={DATE}

Search by domain (fulltext)

GET /api/v1/domains/search?q={DOMAIN}

Get Domain Details

GET /api/v1/domain/{DOMAIN}

🎲 Domain Roulette

Not sure where to go next? Click this button and I will take you to a random website.


How often do you check for update?

Sites are checked once every 7 days or daily if near expiry.

What is the tech stack behind this?

This site and all its componenets are written entirely in 🦀 Rust. It uses sqlx to access the Postgres database, askama for templating and classless.de for class-less UI that is blazing fast to load.

Top one million domains are sourced from The Majestic Million and are periodically updated.

..but WHY?

Because I needed to play with Rust's safe and "correct" concurrency features. The process that loads domain from majestic and check for SSL cert heavily uses concurrent threads. This frontned is server side rendered page instead of an SPA because I wanted to try out the state of Rust templating.

The result is brilliant! it uses so little resources that I can keep supporting this service for as long as possible. If you decide to use the API for serious purpose then you can contact me.