SECOPS

Cloudflare admin-action anomaly triage to Slack

Pulls new Cloudflare audit-log entries on a schedule, flags unusual admin actions (WAF rule deletions, API token creation, off-hours config changes).

CategorySecOps
Enginesim
Difficultyintermediate
Triggerschedule
Steps5
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerEvery 15 minutes (scheduled)
  • ActionFetch new Cloudflare audit-log entries since last cursorCloudflareCloudflare
  • LogicScore actions by sensitivity and time-of-day
  • LogicFilter out low-risk routine events
  • OutputPost ranked anomaly queue to Slack security channelSlack

What it does

Every 15 minutes it reads the Cloudflare audit log, scores each admin action for risk, and pushes anything suspicious into a Slack triage thread with the actor, action, source IP, and a one-line reason it was flagged.

When to use it

Use it when your team manages Cloudflare zones for multiple properties and wants a lightweight, continuous check on who changed what — without anyone manually scrolling the audit UI. Ideal for catching WAF rule removals, new API tokens, DNS edits, or changes made outside business hours.

How it works

  1. 1A schedule fires every 15 minutes and records the last cursor it processed.
  2. 2The flow calls the Cloudflare audit-log API for entries since that cursor.
  3. 3A scoring step ranks each action by sensitivity (token/WAF/firewall changes weighted high) and time-of-day (off-hours boosted).
  4. 4A filter drops routine, low-score events so only genuine anomalies advance.
  5. 5Flagged actions are formatted into a compact review queue.
  6. 6The queue posts to a Slack security channel as a threaded message, one row per anomaly, ready for an analyst to ack or escalate.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect CloudflareWorkers, Pages, R2, KV — the edge stack.
  2. 2
    Connect SlackChannels, DMs, threads, mentions.
  3. 3
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  4. 4
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  5. 5
    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.