SSL Certificate Checker & Expiry Monitor
Pricing
$0.30 / 1,000 domain checkeds
SSL Certificate Checker & Expiry Monitor
Check SSL/TLS certificates for a list of domains: valid or not, issuer, expiry date, days left, TLS version and SAN list. Flags EXPIRED, EXPIRING_SOON and INVALID certificates, with an option to output only problems: ideal for scheduled monitoring of merchant, checkout and API domains.
Pricing
$0.30 / 1,000 domain checkeds
Rating
0.0
(0)
Developer
Luke Mangan
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Features
Share
SSL Certificate Expiry Monitor
SSL Certificate Expiry Monitor is a bulk SSL certificate checker: for each domain you get validity, issuer, expiry date, days left, TLS version and SANs, with EXPIRED, EXPIRING_SOON and INVALID flags.
Best for: Monitoring merchant, checkout and API domains, agencies managing many client sites, and DevOps teams avoiding surprise certificate expiry.
How to check SSL certificate expiry in bulk
- Add domains to Domains (a port is optional, e.g.
example.co.uk:8443). - Set Warn when expiring within (days) and turn on Only output problems.
- Save as a task, schedule it daily and connect Slack, email or a webhook for alerts.
How it works
Makes one standard TLS handshake per domain, the same as a browser opening the site. No scanning or other requests. Certificates are verified against the standard trust store. Unreachable hosts and bad input are reported (UNREACHABLE / INVALID_INPUT) and not charged. Schedule it daily and use onlyProblems to get alerts via Apify integrations (Slack, email, webhooks).
Output
domain, status, daysLeft, notAfter, issuer, tlsVersion, verifyError, sans, ok
Pricing (pay-per-event)
domain-checked: $0.0003 per result ($0.3 / 1,000). Platform usage is included; you pay only for results.- Example: 10,000 domains cost $3.00.
Example input
{"domains": ["stripe.com","checkout.example.co.uk:8443"],"warnDays": 21,"onlyProblems": true}
Example output
Values below are illustrative.
{"domain": "example.com","status": "OK","daysLeft": 73,"notAfter": "2026-12-25T22:56:35Z","issuer": "SSL Corporation","tlsVersion": "TLSv1.3","verifyError": null,"sans": ["example.com"],"ok": true}
Use it via API, schedules and integrations
Run it in Apify Console, or call it from your own code with the Apify API or the Python and JavaScript clients. Save an input as a task and add a schedule to run it regularly, and send results to Slack, email, webhooks, Zapier, Make or n8n with Apify integrations. AI agents can find and run it through the Apify MCP server.
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("sterlingverify/ssl-expiry-monitor").call(run_input={"domains": ["example.com"], "warnDays": 21})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item)
Use in Clay, Zapier, Make, n8n, Pipedream, Power Automate or Activepieces
All of them connect to Apify through their official Apify integrations, using your own Apify account: an API token from Apify Console > Settings > API & Integrations, or Apify sign-in for Power Automate. Runs bill to your Apify account at this Actor's pay-per-event price.
- Clay: save this Actor's input as an Apify task and copy it as JSON. In your Clay table, add the Run Apify Actor enrichment, choose it and paste the JSON into Input Data, mapping Clay columns into the fields. To pull a finished run into a new table, use the Import data from Apify Actor source.
- Zapier: use the Apify Run Actor action, or the Finished Actor run trigger followed by Fetch dataset items. Synchronous runs in Zapier stop after 30 seconds, so use the trigger for big batches.
- Make: add the Apify Run an Actor module with Run synchronously set to Yes, then Get Dataset Items with the run's dataset ID. For longer runs, use the Watch Actor Runs trigger.
- n8n: install the Apify node (
@apify/n8n-nodes-apify, or search "Apify" on n8n Cloud) and use Run an Actor and get dataset. - Pipedream: add the Apify app's Run Actor action, or Run Task Synchronously on one of this Actor's public example tasks (or your own saved task) to get the dataset items back in one step. For big batches, start from the New Finished Actor Run or New Finished Task Run trigger, then Get Dataset Items.
- Power Automate: add the Apify connector (a premium connector, currently in preview) and sign in with your Apify account. Use Run Actor with Enter custom value set to
sterlingverify/ssl-expiry-monitorand paste the input as JSON, then Get dataset items with the run's default dataset ID. For big batches, start the flow from the Actor run finished trigger instead. - Activepieces: add the Apify piece and use Run Actor, or Run Task on one of this Actor's public example tasks (or your own saved task), then Get Dataset Items. For scheduled or big batches, use the Watch Actor Runs or Watch Task Runs trigger.
- Google Drive / Sheets: add Apify's Upload results to GDrive integration to a scheduled task to drop each run's CSV or XLSX into your team's Drive, or chain the Google Sheets Import & Export actor to append rows to a sheet.
- Slack alerts: add Apify's Slack integration to a scheduled task to post each run's results or new alerts to your team channel, or start a check from Slack with
/apify calland your task ID. - Email digests: add Apify's Send results email via Gmail integration to a scheduled task to attach each run's CSV/JSON to your inbox.
- Microsoft Teams alerts: add an Apify webhook (HTTP request on run succeeded or failed) to a scheduled task, point it at a Teams Workflows incoming-webhook URL, and set the payload template to an Adaptive Card message so each run posts an alert into your channel.
- Airbyte: add Apify Dataset as a source in Airbyte (dataset ID + Apify API token) to move a run's results into Snowflake, BigQuery, Postgres or another Airbyte destination.
- Dify: install Apify's apify-integration plugin from the Dify Marketplace and use Run Actor as a tool in a Workflow or Chatflow, or point this Actor's Run succeeded HTTP webhook at a published Dify app's plugin endpoint to trigger it.
- Workato: install the Apify connector from Workato's Community library (Custom connectors), connect it with your Apify API token, and run this Actor inside a recipe or trigger a recipe when a run finishes.
- Any HTTP tool or script: send one request and get the results back as JSON. Runs must finish within 5 minutes.
curl -X POST "https://api.apify.com/v2/acts/sterlingverify~ssl-expiry-monitor/run-sync-get-dataset-items" \-H "Authorization: Bearer YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" \-d @input.json
FAQ
Does it scan my server?
No. It makes one standard TLS handshake per domain, the same as a browser opening the site.
Why can results differ from my browser?
It is a point-in-time check from Apify's network, so results can differ by location or CDN edge.
Disclaimer
A point-in-time check from Apify's network; results can differ by location or CDN edge. Only check domains you own or have a legitimate interest in.
Related sterlingVerify tools
Part of the sterlingVerify UK payments, KYB and data toolkit on Apify Store:
- PSP Status Monitor: outage alerts from payment provider status pages
- npm & PyPI Package Health Check: npm and PyPI vulnerability, licence and maintenance check
- PCI Readiness Scanner: passive checkout security check with a likely SAQ type
- Structured Data Extractor: schema.org JSON-LD and Open Graph data from any page