IT OPS

Cloudflare DNS & Origin Cert Expiry Watch

Daily check that scans Cloudflare records for origins whose TLS certificates or registrations are within the expiry window and pages the on-call team before anything goes dark.

CategoryIT Ops
Enginesim
Difficultyintermediate
Triggerschedule
Steps5
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerDaily schedule starts the expiry scan
  • ActionList active DNS records and hostnames from CloudflareCloudflareCloudflare
  • LogicCheck cert expiry; branch under 7 days vs 7-30 days
  • ActionPage on-call via PagerDuty for imminent expiriesPagerDutyPagerDuty
  • OutputSend the 7-30 day digest to SlackSlack

What it does

This workflow inspects the hostnames behind your Cloudflare DNS records and surfaces the ones whose origin certificates are about to expire. Instead of waiting for a 526 or a browser warning, it gives the on-call team a ranked list days ahead, with the soonest expiries paged immediately.

When to use it

Use it when you front many origins through Cloudflare and certificate renewal is owned by different teams or partly manual. It catches the long tail of records nobody remembers owns a cert that auto-renew never covered.

How it works

  1. 1A daily schedule starts the scan.
  2. 2Cloudflare returns the active A/AAAA/CNAME records and their hostnames.
  3. 3The workflow checks each origin's certificate expiry date.
  4. 4A branch splits records by urgency: under 7 days vs. 7 to 30 days.
  5. 5Sub-7-day expiries trigger a PagerDuty incident for the on-call engineer.
  6. 6The 7-to-30-day set is delivered as a single digest to Slack so teams can renew on their own schedule.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect CloudflareWorkers, Pages, R2, KV — the edge stack.
  2. 2
    Connect PagerDutyIncidents, on-call, escalations.
  3. 3
    Connect SlackChannels, DMs, threads, mentions.
  4. 4
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  5. 5
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  6. 6
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.