Monitor domain expiry with a WHOIS Expiry check
Overview
A WHOIS Expiry check watches the registration of a domain name and fails when the domain expires within a number of days you choose, 30 by default. It catches the expiry that takes a website, its mail and every service behind it offline, early enough to renew.
The check reads the expiry date from the domain's registry. By default it asks over RDAP first, the HTTPS successor to WHOIS, starting at IANA (data.iana.org) and following on to the registry. When RDAP gives no answer, it falls back to classic WHOIS on port 43, starting at whois.iana.org and following the registry's referral.
Before you begin
- Your appliance is licensed for Uptime Monitoring.
- The appliance can reach the internet over HTTPS (for RDAP) or on TCP port 43 (for WHOIS). If HTTPS is blocked but port 43 is open, set a WHOIS server explicitly (step 4).
- Decide how many days of warning you need. Domain renewal through a reseller or a purchasing process can take longer than the default 30 days.
Steps
Step 1
Open Uptime Monitoring > Checks and select New Check. The check wizard opens on Catalog.
Step 2
In the catalog, choose WHOIS Expiry in the Network group ("Queries a WHOIS server and checks domain expiry"). The same type is also offered on the Custom path.
Step 3
Complete Basic with a name that says which domain the check watches.
Step 4
On Endpoint, enter the domain under Domain, for example example.com: the registered domain itself, without https:// or a path. Under Check options:
- Warn N days before expiry: leave empty for the default of 30, or enter your own lead time.
- WHOIS server (optional): leave it blank to use RDAP first and then WHOIS via
whois.iana.org. Enter a server only when the appliance cannot use HTTPS: the check then skips RDAP and queries that WHOIS server directly. Some registries are retiring port 43 WHOIS, so prefer the blank default wherever HTTPS is available.
Step 5
On Validation, select Test Request. The WHOIS Expiry panel shows the Response time and Domain expires in "N days". If the domain has no expiry date in the answer, the raw answer is shown under WHOIS response; when RDAP was tried first, it starts with a bracketed line that says why RDAP was not used, for example "[RDAP rdap.nominet.uk: HTTP 503; WHOIS fallback answer follows]".
Step 6
Complete Alerting, Schedule, Datasource and Dependencies as for any check, review the Summary and save. Domain expiry changes slowly: a schedule of a few times a day is enough.
How the result is decided
| Situation | Result |
|---|---|
| The domain expires in at least the warning number of days | Success |
| The domain expires sooner | Failure: "Domain expires in N days (< WARN)" |
| The answer has no expiry date | Failure: "WHOIS response did not include an expiry date" |
| The registry could not be reached | Failure: "WHOIS query failed:" with the reason |
For alert profiles, the check reports the metrics response_time_ms and domain_expiry_days.
Troubleshooting
- "WHOIS response did not include an expiry date". Some registries do not publish the expiry date, or publish it in a format the check does not read. Open the raw answer under WHOIS response in Test Request to see what the registry returned.
- "WHOIS query failed". The appliance could not reach RDAP or the WHOIS server. Check outbound HTTPS and TCP port 43 from the appliance, or set the WHOIS server explicitly.
- The Domain expires in tile is missing right after a domain expired: a domain that expired a day or two ago may be reported without a day count. Renew it; the check fails until the registry shows the new date.