Loading...

Versioning

Lists are versioned automatically, so you can change a list’s shape without breaking the apps already using it. The version is part of the address — …/movies/2/inception — and each version keeps serving its own field shape. A deployed client pinned to version 1 goes on getting version 1 for as long as it likes; you move it to version 2 when you are ready, not when the change ships.

A list's detail page showing its current version in the header: lists / QA-smoke-live / version 1

A list always shows its current version — here, version 1.

What creates a new version?

Only a breaking change to the shape does. Adding a field or changing your records never bumps the version, because nothing already deployed can break:

ChangeNew version?Why
Add a fieldNoExisting clients simply ignore the extra property.
Rename a fieldYesClients bound to the old property name would break.
Remove a fieldYesClients reading the property would receive nothing.
Add / edit recordsNoData changes are visible in every version immediately.
Example

If known_for is renamed to best_movie, version 1 keeps returning known_for while version 2 returns best_movie:

GET /suggest/{account}/actors/1/keanu   →  { "name": "Keanu Reeves", "known_for": "The Matrix" }
GET /suggest/{account}/actors/2/keanu   →  { "name": "Keanu Reeves", "best_movie": "The Matrix" }

Pin production clients to a specific version and migrate them at your own pace — there is no forced upgrade window.

Restoring a previous version

Changed a list’s shape and want the old one back? You can restore any earlier version. Restore rolls forward, never back: it brings the old version back as a brand-new latest version, so numbers only ever go up and anything already pinned to an older version keeps working. Nothing is overwritten.

It is schema only — your records are never versioned and are left untouched. You are restoring the shape, not the contents.

Auto-plays · use Back / Next to step through at your own pace.

Restore a list
  1. On the Lists page, open the menu on the list’s row and choose Restore Version. (It appears only for lists you own that have earlier versions.)
  2. Pick the version to bring back and click Restore.
  3. The list’s version number goes up by one — the old shape is now the newest version, and every earlier version still exists.
Restore a group

Groups restore their membership — which lists, at which versions — rather than a schema. The steps are the same ( menu → Restore Version). If a member list was deleted since that version, it is simply left out and reported, never resurrected as a dead link.

Walk through a rename end-to-end in the Versioning tutorial.

Top