Automate the cleanup of expired AWS ACM certificates with Slack-based approval. This workflow helps maintain a secure and tidy AWS environment by detecting expired SSL certs, sending detailed Slack notifications to admins, and deleting them upon approval, ensuring full visibility and control over certificate lifecycle management.
This workflow is designed for:
This automated workflow performs the following tasks on a daily schedule :
โ
 to approve deletion).Create the Workflow
Schedule TriggerAWS - ACM: listCertificatesAWS - ACM: describeCertificate (loop per cert)IF Node to filter expired certsSlack - Send & Wait for ReactionAWS - ACM: deleteCertificateSlack - Post Message to notifyConfigure Slack
chat:writereactions:readchannels:readConfigure AWS Credentials
acm:ListCertificatesacm:DescribeCertificateacm:DeleteCertificateSet schedule
| Component | Description | 
|---|---|
| AWS ACM Access | IAM permissions for ACM actions | 
| Slack Bot Token | With chat:write&reactions:read | 
| n8n Environment | Self-hosted or n8n Cloud | 
| Slack Channel | Where approval messages will be sent | 
Adjust the wait time before checking Slack reactions in the sendAndWait node (default 1 hour).
Change the Slack channel or tag specific people (<@U123456>).
Add Google Sheets, Notion, or DynamoDB to log certificate details and approval decisions.
Use an IF node before deletion to simulate removal when ENV === dry-run.


