Snapshots and Reviews
To support the concept of publishing a set of content (dozens or hundreds of pages) usually for a launch of an initiative or event, the concept of content snapshots and reviews has been introduced.
A snapshot is made up of a set of pages (and other resources) that are captured at a particular point in time, when the preview state of a page is added to a snapshot. The snapshot has a name that is often tied to the launch of those pages. To draw comparisons to the version control of code, a snapshot is similar to a branch for content.
The .aem.reviews
environments show what the entire website will look like, when the snapshot is eventually published, and allows for reviews of the overall website, before a release of the content in question.
How to use Snapshots and Reviews
For developers the API endpoint for /snapshot
can be helpful. See documentation here.
The easiest way for users to get engaged is to add the following plug to your sidekick configuration.
"plugins": [
{
"id": "review",
"title": "Review...",
"environments": [
"dev",
"preview",
"review"
],
"url": "https://labs.aem.live/tools/snapshot-admin/palette.html",
"isPopover": true,
"popoverRect": "width:200px; height: 200px",
"passConfig": true,
"passReferrer": true
},
Lifecycle of a snapshot
Usually a snapshot is created for a launch or an event that requires a set changes to a website. The snapshot is given a name that identifies the event e.g. product-launch-2025
or fall-collection-2025
, then all the pages are edited and previewed, and added to the snapshot.
While the snapshot is put together the pages can be reviewed on the corresponding .aem.reviews
environment. For example product-launch-2025--main–<site>--<org>.aem.reviews
or fall-collection-2025--main–<site>--<org>.aem.reviews
.
Once the set of pages is complete, the snapshot can be locked and the review can be completed. Once the review is completed the snapshot can be published.
There is a higher level review request and approval (or rejection) that implies locking / unlocking the snapshot as well as publishing when approved.
Relationship of Pages and Snapshots
When a page (or a resource in general) is added to a snapshot, a copy of the current state in the content bus is taken and is added to the snapshot. The copy remains immutable, even if the underlying page changes unless the page gets explicitly updated in snapshot. The content contains all the information that was in the underlying document including metadata.
Any page can be a part of multiple snapshots, either at the exact same state or at a different state. If there are snapshots that are going to be published sequentially for different launches or events, the snapshots can contain different states of the same page.
Special Mention: Redirects and Bulk Metadata
Redirects and Bulk metadata can be added to snapshots by adding their underlying (spreadsheet) documents to a snapshot. In some projects these files are changing frequently and it might make sense to isolate the redirects or metadata changes to individual files, have a separate publication of metadata and redirects or provide more governance in preparation for a large-scale snapshot.
Permissions
To view snapshots either directly or via .aem.reviews
a user needs to be able to access .aem.page
, and to edit a snapshot the author
role is needed. To publish a snapshot the publish
role is needed.
Tools
From the above review button in the sidekick you can also get to the snapshot admin user interface at
https://labs.aem.live/tools/snapshot-admin/index.html
The snapshot admin allows you to add and remove pages in bulk for example from a spreadsheet as well as performing all of the snapshot related operations (lock, unlock, request, reject and approve).