Una purga quita el contenido guardado de todos los nodos de borde que guardan en caché la zona, en general en menos de un segundo. Queda en la auditoría, pero no se versiona: lleva motivo y admite simulación, pero no versión esperada. El token necesita el rol Técnico; el panel también puede crear un token que solo puede purgar la caché de una zona, ideal para un pipeline de CI.
El cuerpo lleva exactamente una de estas claves, con como mucho 100 valores:
| Clave | Purga |
|---|---|
purge_everything: true | Todo lo guardado de la zona. |
files | Estas URL de la zona, con todas sus variantes. |
prefixes | Todas las URL que empiezan por este host/ruta. |
hosts | Todo lo guardado de estos nombres. |
tags | Todas las respuestas que llevaban alguno de estos valores de Cache-Tag. |
import { OpenWAF } from "./openwaf.ts";
const owf = new OpenWAF();
const { items = [] } = await owf.listZones();
const zone = items.find((z) => z.name === "example.com");
if (!zone?.id) throw new Error("no se encuentra example.com");
const body = { files: ["https://www.example.com/app.js", "https://www.example.com/styles.css"] };
// Opcional: comprueba qué se va a purgar (los valores vuelven normalizados).
const preview = await owf.purgeCache({ zone: zone.id, body }, { reason: "Despliegue 42", dryRun: true });
console.log("se purgará", preview.kind, preview.values, preview.warnings);
const done = await owf.purgeCache({ zone: zone.id, body }, { reason: "Despliegue 42" });
console.log("purga", done.seq);from openwaf import OpenWAF
owf = OpenWAF()
zone = next(z for z in owf.list_zones()["items"] if z["name"] == "example.com")
body = {"files": ["https://www.example.com/app.js", "https://www.example.com/styles.css"]}
# Opcional: comprueba qué se va a purgar (los valores vuelven normalizados).
preview = owf.purge_cache(zone=zone["id"], body=body, reason="Despliegue 42", dry_run=True)
print("se purgará", preview["kind"], preview["values"], preview["warnings"])
done = owf.purge_cache(zone=zone["id"], body=body, reason="Despliegue 42")
print("purga", done["seq"])Comprobar que ha llegado al borde
listCachePurges / list_cache_purges lista las purgas de la zona de los últimos 7 días con, para cada una, cuántos nodos de borde con caché sirven la zona (nodes) y cuántos la han aplicado ya.