Frequently asked questions

Common questions

How AtlasCMS handles drafts, publishing, brand separation and public reads.

How do drafts stay drafts?

A draft is the latest revision of an entry, and a draft never goes live by itself. Drafts are only reachable through the authenticated manage API or with a preview token, so the public read API never returns unpublished work.

How do publishing and scheduling work?

Publishing moves published_revision_id to the revision a publisher chose; rollback moves it back, and nothing is copied. Scheduling pins a future revision, and the scheduler runs entries:publish-scheduled every minute. Publishing also queues a signed webhook per active webhook so the brand site can purge its cache.

How are brands separated?

Every brand-owned row carries its brand_id and models apply a global tenancy scope, so a query only ever sees the brand it runs in. Jobs and commands set the brand with a current brand context, and a request for another brand's record fails closed as not found.

What does the public read API return?

It returns published content only: entries with their blocks, menus, settings, UI strings, forms and theme. Media ids are resolved to URLs, every response carries an ETag with 304 support and Cache-Control, and the brand comes from the bearer token or from the Host header.