Monitor SSL certificates and security headers with Apify, Slack, and Gmail alerts

Go to Workflow
0 views
Built by Adam Adam
Created on October 24, 2026

Description

Quick overview
This workflow monitors SSL certificate expiry and security headers for a list of websites using Apify, stores the last known state in an n8n Data Table, and sends change-based alerts and a weekly summary to Slack, Gmail, and an optional webhook.

How it works
Runs on a daily schedule, on demand, or on Mondays for the weekly summary, and loads the site list and notification settings from the CONFIG block.
Creates (if needed) and reads the ssl_monitor_state n8n Data Table to keep track of each site’s last known grade, certificate status, and open issues.
On daily/manual runs, calls the Apify “Security Headers & SSL Audit” Actor to audit each site’s HTTPS/certificate status, redirects, and security headers.
Compares the latest audit results with the stored state to detect new, changed, reminder-due, and resolved issues, with “site unreachable” only alerting after consecutive failed checks.
Saves the updated per-site state back to the ssl_monitor_state Data Table and builds a single consolidated alert message when any changes are detected.
Routes alerts by severity and sends them to the enabled channels via Slack, Gmail, and/or an HTTP webhook, retrying sends without blocking other channels.
On weekly summary runs, generates a summary from the stored state (without running Apify) and sends it through the same notification channels.

Setup
Create an Apify account and add an HTTP Header Auth credential with Authorization: Bearer for the Apify request.
Add Slack credentials and set the target channel in CONFIG if you want Slack notifications.
Add Gmail credentials and set the recipient address and minimum severity in CONFIG if you want email notifications.
If using a webhook (for example Discord or Microsoft Teams), enable it in CONFIG and paste the webhook URL.
Update CONFIG with your site domains, certificate warning/critical thresholds, minimum headers grade, and reminder/consecutive-failure settings before activating the workflow.

Requirements
n8n with Data Tables (tested on 2.43), an Apify account (
Security Headers & SSL Audit Actor) and Slack and/or Gmail.

Customization
criticalReminderDays, email.minSeverity and confirmUnreachableChecks. Set previewWeeklySummary to true to test the summary. About $0.003 per site per check on Apify.

Additional info
Disclosure: the Apify Actor used here was built and is published by the author of this template (EdenWorks). You pay Apify's usage price when it runs and the author earns part of that fee. Apify's free plan credits cover light use.

This workflow was created by Adam and shared publicly on the n8n community template library. n8nFind indexes it for discovery — the workflow remains the property of its original creator.

Nodes Used (4)

Code
n8n-nodes-base.code
Gmail
n8n-nodes-base.gmail
HTTP Request
n8n-nodes-base.httpRequest
Slack
n8n-nodes-base.slack