SSL & Domain Expiry Monitor - Certificate + RDAP Checks

$19.90 / 1,000 · Recently published - building its public record.

Run it on Apify → Free to try - runs bill per result on your own account.

What you give it

Every field is optional unless marked; sensible defaults do the rest.

FieldTypeWhat it doesDefault
domains array One per line. A hostname, a full URL, or host:port. Also accepted under urls, hosts or websites. Leave empty to use the sample list. ["lowlanddata.com", "apify.com", "expired.badssl.com"]
alertThresholdDays array A row is flagged once its countdown falls to one of these. The default ladder warns a month out, then escalates. [30, 14, 7]
alertsOnly boolean Scheduled monitors want silence when nothing is wrong. Off gives the full audit table for every host. False
checkDomainExpiry boolean Adds one RDAP lookup per domain: expiry, registrar, statuses and nameservers. True
timeoutSeconds integer How long to wait for a TLS handshake before recording the host as unreachable. 15
concurrency integer Higher finishes a long list sooner. 8
resetState boolean Forget what was already reported, so the next run alerts on everything again. False
stateStoreName string Named key-value store holding the last reported state per host. ssl-monitor-state
maxItems integer Stop after this many rows. 1000

What you get back

One JSON object per result, with exactly these fields - no seller identities, no contact data, ever.

FieldTypeMeaning
host string Hostname checked, as given.
port integer TLS port used. 443 unless the input said otherwise.
domain string Registrable domain the RDAP answer describes.
reachable boolean False when the TLS handshake failed; see error for the reason.
error string Handshake failure reason. Absent when the host answered.
certificateIssuer string Issuing certificate authority (organization).
certificateValidTo string Certificate expiry timestamp (ISO).
daysToCertificateExpiry integer Whole days left. Negative once expired. Filter on this.
tlsVersion string Protocol the handshake settled on.
hostnameMatches boolean Whether the certificate covers this exact hostname.
domainExpiresAt string Domain registration expiry from RDAP (ISO). Absent where the registry publishes none.
daysToDomainExpiry integer Whole days until the registration lapses.
registrar string Accredited registrar company. Never a registrant contact.
nameservers array Authoritative nameservers on record.
problems array Machine-readable findings: certificate-expired, hostname-mismatch, self-signed, not-yet-valid, obsolete-tls-version, tls-handshake-failed. Empty when healthy.
isAlert boolean True when a problem exists or a countdown crossed one of your thresholds.
isNewAlert boolean True only when this alert differs from what the previous run reported.
checkedAt string When this row was measured (ISO).

Health

Recently published - building its public record. Live record, failures included: status page.

Full documentation, examples and the AI-assistant prompt live on the store page.