Extending on Payload's Draft functionality, you can configure your collections and globals to autosave changes as drafts, and publish only you're ready. The Admin UI will automatically adapt to autosaving progress at an interval that you define, and will store all autosaved changes as a new Draft version. Never lose your work - and publish changes to the live document only when you're ready.
If Autosave is enabled, drafts will be created automatically as the document is modified and the Admin UI adds an indicator describing when the document was last saved to the top right of the sidebar.
Collections and Globals both support the same options for configuring autosave. You can either set
true, or pass an object to configure autosave properties.
|Drafts Autosave Options||Description|
|Define an |
Example config with versions, drafts, and autosave enabled:
autosave is enabled, all
update operations within Payload expose a new argument called
autosave. When set to
true, Payload will treat the incoming draft update as an
autosave. This is primarily used by the Admin UI, but there may be some cases where you are building an app for your users and wish to implement
autosave in your own app. To do so, use the
autosave argument in your
If we created a new version for each autosave, you'd quickly find a ton of autosaves that clutter up your
_versions collection within the database. That would be messy quick because
autosave is typically set to save a document at ~800ms intervals.