Change control

Every configuration change in OpenWAF is simulated, confirmed against a version, recorded with its reason and author, and can be undone.

On this page

OpenWAF treats your zone configuration like code under version control. Whatever you change, from the dashboard, the API, the CLI, the SDKs or an AI assistant over MCP, goes through the same path:

  1. Simulate. The change is validated and built exactly as it would be applied, then rolled back. You get the diff and the version it would create.
  2. Confirm. You apply it with the version you saw. If someone changed the zone in between, nothing is applied.
  3. Record. The change creates a new numbered version of the zone with its author, its reason and a full snapshot, plus an entry in the organisation's audit log.
  4. Propagate. Every edge node that serves the zone applies the new version; you can watch which ones already have.
  5. Undo. Reverting to an earlier version creates a new version with that configuration. History is never rewritten.

What is versioned

Each zone has its own version counter. A version captures the zone's DNS records, edge settings (WAF, origin, TLS, cache, redirects, rate limiting, AI agents…), edge rules, the groups of edge nodes that serve it and a reference to each of its certificates. Private keys and secrets are never part of a version. See Configuration versions for the details.

Where to find it

InterfaceHistory and diffsPropagationAudit log
DashboardDomain → Changes → HistoryDomain → Changes → PropagationAudit log in the sidebar
CLIzones history, zones diff, zones revertzones propagation, --waitaudit
APIGET …/zones/{zone}/versions, …/diff, POST …/revertGET …/zones/{zone}/propagationGET /v1/orgs/{org}/audit
MCPzone_history, zone_diff, revert_zonezone_propagationaudit_log

The CLI, the SDKs, the API and the MCP server all call the same API with the same validation, so a change looks the same in the history whichever way it was made.

Last updated:

↑↓ to navigate↵ to openesc to close