Purges exactly what changed
Publishing an article purges its page, the listings it appears in, and the pages that pick it. Every other cached response stays.
Every Delivery API response tells your frontend which keys it covers. When an editor publishes, Umbraco purges exactly those keys, once every server has the change.
dotnet add package TheBuilder.CacheTags --prereleaseUmbraco CMS 17.4 or later · .NET 10
GET /umbraco/delivery/api/v2/content/item/articles/harbour-mornings/
X-Umbraco-Cache-Keys: response-2de23a3a68340e675d917313029cab2e, umbraco{
"version": 1,
"expire": [
"content-e0000000-0000-0000-0000-000000000003",
"response-2de23a3a68340e675d917313029cab2e",
"response-bedaf32c19e04d2a8b1e5c7a0f3d9e61"
],
"stale": ["children-e0000000-0000-0000-0000-000000000002"]
}Your frontend caches for days, and is never wrong for long. Umbraco keeps track of which responses showed which content, and tells the frontend the moment any of them changes.
For Next.js and other frontends that cache Delivery API responses, on one Umbraco server or many.
Publishing an article purges its page, the listings it appears in, and the pages that pick it. Every other cached response stays.
A purge goes out once every Umbraco server serves the change, and listings once every server's index has it, so a frontend that refetches at once gets the new content.
Tag entries with Next.js cacheTag, let Cloudflare purge by tag, or receive a signed webhook in anything else.
The package records each change, waits until every server serves it, and sends the keys to every purge target.
How a purge is timedTag each cached response with its keys, and add a webhook route that expires them. The Next.js guide has both, ready to copy.
Read the Next.js guideconst response = await fetch(url);
cacheTag(...response.headers.get("x-umbraco-cache-keys").split(", "));Install the package, point it at your frontend, and publish.
Read the quickstartFocused packages for modern Umbraco projects.
Generates a WebP, BlurHash or ThumbHash placeholder when an image is saved, ready for your frontend to show while the image loads.
Shows the traffic from Vercel Web Analytics or Plausible in the Umbraco backoffice, for the whole site and for each page.
Reads the C2PA Content Credentials on uploaded images and flags the ones that say they were made or edited with AI.
Lets editors change the next-intl or i18next messages in your app from Umbraco. Your app fetches the changes when it runs.
Lets frontends call the Delivery API and your own endpoints with an OIDC token from their hosting platform, instead of a shared API key.
Shows your Document Types as a city in the backoffice, with the links between them, and flags schema problems before they ship.
Renders the rich text JSON from the Umbraco Content Delivery API with React. You decide how each block and node is rendered.