IT OPS

DNS Record Drift and CAA Expiry Audit to Notion

Audits Cloudflare DNS records daily for missing CAA, soon-to-expire ACME challenge leftovers, and TTL drift.

CategoryIT Ops
Enginesim
Difficultyadvanced
Triggerschedule
Steps6
Setup~25 min

How it runs

The automated pipeline, trigger to output.

  • TriggerDaily schedule starts the DNS audit
  • ActionFetch full DNS record set per zoneCloudflareCloudflare
  • LogicCheck CAA, orphaned ACME TXT, TTL drift
  • LogicProceed only if findings changed
  • ActionAppend dated entry to Notion changelogNotionNotion
  • OutputNotify Teams on changed findingsMicrosoft Teams

What it does

Goes beyond cert dates to audit the DNS records that renewals depend on: confirms a CAA record authorizes your issuer, flags orphaned `_acme-challenge` TXT records from past validations, and detects TTL drift that can stall renewal propagation. It records each daily audit in a Notion changelog and notifies Microsoft Teams only when findings change from the prior run.

When to use it

Use it when ACME/Let's Encrypt renewals occasionally fail and the root cause is DNS hygiene, not the cert itself. A missing CAA or stale challenge record breaks automated issuance quietly.

How it works

  1. 1A daily schedule starts the audit.
  2. 2Cloudflare returns the full DNS record set per zone.
  3. 3A logic step checks CAA presence, orphaned ACME TXT records, and TTL drift, producing a findings list.
  4. 4A branch compares findings against the last run and proceeds only on change.
  5. 5Notion appends a dated changelog entry with the diff.
  6. 6Microsoft Teams gets a notification summarizing what changed.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect CloudflareWorkers, Pages, R2, KV — the edge stack.
  2. 2
    Connect NotionPages, databases, comments.
  3. 3
    Connect Microsoft TeamsChannels, chats, files.
  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.