Probe type · Starter+
Domain expiration probe
The forgotten-renewal tripwire. Watches your domain's expiry date weeks before it lapses, and alerts the second the registrar or name servers change.
Why you need it
A Domain probe watches the registration record
itself — the calendar that decides whether example.com
stays your domain at all. Auto-renew can silently fail, and on
the day the registration lapses, DNS stops resolving
— the website doesn't return 5xx, it disappears.
On every check the probe queries RDAP against the registry responsible for the TLD. When RDAP isn't available the probe falls back to traditional WHOIS on port 43 and parses the free-text response. From the response it captures:
- Days until expiry — driving a two-tier state machine. Degraded days (default 15) flips Up → Degraded; Down days (default 0) flips Down.
- Registrar name + name servers with drift detection — when either changes between consecutive checks an incident fires. Usually means account hijack or unintended transfer-out.
- EPP status codes (
clientHold,clientTransferProhibited,pendingDelete) —clientHoldis the dangerous one, where the registry has stopped resolving the domain. - DNSSEC delegation + the exact
expiresAtandcreatedAttimestamps.
Where it pays off
Add a Domain probe for every apex domain you own and care about:
- Your production apex — the must-have case. 30 days of advance warning gives a full billing cycle to fix the renewal.
- Brand and redirect domains — alternate TLDs and misspellings registered defensively. They rarely get attention, which is exactly why they silently lapse.
- Customer / vanity domains — agencies and resellers operating domains on behalf of customers.
- Hijack tripwire — even with trusted auto-renew, the registrar-change incident is the cheapest tripwire against an account takeover.
Not the right choice when: you want to monitor a certificate's expiry (use SSL — independent calendars). For DNS record values use DNS. Subdomains don't have their own registration record — add Domain for the apex.
Configuration parameters
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
Name |
string |
Required | — | Human-readable label shown in the dashboard, on the status page, and in alert subject lines. |
Target |
string (apex domain) |
Required | — | The apex domain to look up (e.g. example.com). Subdomains don't have their own registration record. |
Degraded at (days) |
integer |
Optional | 15 | Days remaining at which the probe flips Up → Degraded. Raise for domains where renewal needs longer lead time. |
Expired at (days) |
integer |
Optional | 0 | Days remaining at which the probe flips Down. 0 means only genuine expiry trips it. |
Interval (seconds) |
integer |
Optional | 86400 (1 day) | Registration expiry moves in days, so daily cadence is plenty. |
Timeout (seconds) |
integer (1-120) |
Optional | 30 | Hard ceiling on the RDAP + WHOIS-fallback lookup. |
Show on status page |
boolean |
Optional | false on create | Master visibility gate for the public page. |
Paused |
boolean |
Optional | false | Master kill-switch. |
Auto-email alerts |
boolean |
Optional | true | Per-probe switch on top of per-watcher toggles. |
SLA target |
decimal (99.0-99.999) |
Optional | — | Optional uptime SLO. |
Available on Starter+. Already on StatusPulse? See the full config in Help →
Related
Try Domain expiration probe in StatusPulse
5 probes, 1 status page, forever. No credit card. US or EU host — you choose.