Drafts
On a model with publishing switched on, a save adds a draft version and the API keeps returning the published one. You can see the draft as the API would serve it before you publish.
What a save does
A new record starts as version 1, in draft. Each save adds a version, and the public API goes on returning the published version until you publish a specific one by its version id. Publishing is switched on per model. On a model without it, changes take effect immediately.
The preview pane in the record editor
The record editor in the console has a preview pane. It builds the record's GraphQL query from the live schema, runs it against the public API and shows the exact response. A toggle shows the same read as a GraphQL document or as the SDK call, and a switch moves between the saved draft and the last published version. The locale comes from the editor's language selector, and you can set the project's context dimensions and simulate sign-in status and segments.
Previewing as a particular key
The pane can run as your own console session, as that session narrowed to chosen scopes, or as a public key you paste in. Your own session reads every field, so to see what one API key would be served, paste that key.
Reading drafts from your own application
A query that passes preview: true reads the latest draft, and its key must hold the drafts:read scope. The documented setup is a separate public key for the preview deployment that holds the scope, which the production key does not. A preview request from a key without it is refused with a permission error. Draft reads are never stored in the response cache.
Read the detail
The records guide sets out the draft and publish workflow, with the GraphQL mutations and CLI commands for each step.