Beta . Ortha CMS is in public beta. Every plan is free until it ends.
Get started
Menu

Content · 9 / 23

Version history

Every save appends a snapshot of the whole entry. Preview any version against the current one, restore it, or publish it.

Content Articles The quiet return of night trains EN· English Published · up to date Saved Publish changes
Content Access History
The quiet return of night trains
Published Modified EN · English Published Oct 23, 2026 Live version from Oct 23, 2026 · saved changes not published yet Saved 3 minutes ago Saved just now
6 versions · 8 events 7 versions · 9 events Activity
Today
v7 Saved version 7 04:22 PM · Current draft Draft
Today
Published content · sofia@newsroom.example 04:20 PM
Edited content · sofia@newsroom.example 04:18 PM
Yesterday
Edited content · mara@newsroom.example 11:02 AM
Oct 21
Published content · sofia@newsroom.example 11:45 AM
Edited content · mara@newsroom.example 11:40 AM
Edited content · mara@newsroom.example 09:15 AM
Oct 20
Edited content · sofia@newsroom.example 05:30 PM
Created content · sofia@newsroom.example 02:10 PM
v5 v4 Compared with the current draft Oct 22, 2026, 11:02 AM · 1 field differs Oct 21, 2026, 11:40 AM · 2 fields differ Oct 21, 2026, 11:40 AM · Identical to the current draft Preview Restore Publish this version
Title The quiet return of the night train The quiet return of night trains
Title Night trains are coming back The quiet return of night trains
Summary Operators are reopening sleeper routes that closed years ago. Sleeper routes that closed a decade ago are running again across Europe.
Restore version 4?

This re-applies that version to the record and saves it as a new revision. Nothing in the history is lost.

Restored version 4 as a new revision.

How it works

  1. 01

    Each save appends a version, in the same transaction as the change.

  2. 02

    Pick a version to see which fields differ from the current draft.

  3. 03

    Restore re-applies it as a new version. History is never rewritten.

States
Live, Draft, Superseded
Restore
Appends a new version
Kept
Every version, for as long as you keep them

In depth · For editors, and whoever gets the call

You can always go back

Every save appends a snapshot of the entire entry in the same transaction as the save, so a change cannot commit without a version.

One transaction, both writes

A save updates the live row and appends a version in the same transaction — either both land or neither does. The snapshot holds every field value and every relation, including the order of many-relations.

Under the hood

Nothing is rewritten: a restore appends a new version equal to the old one, so the restore itself is part of the record.

A version timeline of four entries, with version 5 marked live and version 6 a newer draft, beside the two fields that changed between them.

Version 6 is a draft saved over the live version 5.

What you can do with the timeline

Compare any version with now
Field by field, with relations resolved to the records they point at.
Restore one
Re-applies the snapshot through the ordinary save, with the same validation and a new version.
Publish one
Take any version live directly; it is re-validated on the way.
See what was live and when
Each version is marked live, draft or superseded, and only one is live at a time.
Versions and activity together
Publishes, unpublishes and access changes sit between the versions, grouped by day.

What a snapshot contains

Part What is captured
Field values Every scalar, per-language and shared, as stored.
Single relations The foreign key.
Many relations The full ordered link set.
Media fields Asset ids.
Status Whether this version was ever live, and is now.

Questions

How many versions are kept?

All of them, for as long as you keep them. Nothing prunes your history.

Does a translation have its own history?

Yes. Each language has its own timeline, so you can roll back the German wording without touching the English.

Do AI assistant edits show up here?

Yes, as ordinary versions, undone the same way as any other change.

Full reference in the docs