Meridian handbook
ReferenceCLI

content

engine-dmo content: Content operations: list, get, create, update, trash, restore, hold, purge, clone, reproject, reindex, publish, structure, variant, prune-revisions, legal-hold. Every subcommand, argument and flag.

Content operations: list, get, create, update, trash, restore, hold, purge, clone, reproject, reindex, publish, structure, variant, prune-revisions, legal-hold.

There is no command to unpublish a locale or to schedule a publish: content publish publishes now. Unpublish or schedule in the admin, or through the content MCP (its publish tool takes publish_at, and unpublish takes a redirect destination). A seed can leave a document scheduled with schedule:. Taking a page down from the terminal is content trash, which takes --redirect (parent, a path or none) when a locale is live.

CommandWhat it does
engine-dmo content cloneCopy a document as a new draft on a site
engine-dmo content createCreate a document from a JSON object of field values, validated as the admin validates a save; --publish runs the publish checks
engine-dmo content exportExport a type’s documents on a site, or a selection, as JSON or CSV with their working values per locale; audited
engine-dmo content getA document’s working and published values by field handle, and its status per locale
engine-dmo content holdKeep a trashed document until someone decides, or --until a date, or --release
engine-dmo content importImport a JSON export file as drafts, matched by id or slug, never published; --dry-run writes nothing
engine-dmo content legal-holdPlace a legal hold on a document, keeping every revision and refusing its purge; --release removes it
engine-dmo content listList documents, one line each
engine-dmo content prune-revisionsRun the revision retention sweep now, resuming an interrupted run; --dry-run says what would go
engine-dmo content publishPublish a locale through the publish checks, or every locale whose checks pass with --all-locales
engine-dmo content purgeHard delete, irreversible; --expired runs the nightly sweep now
engine-dmo content reindexQueue search indexing for every published document, on every site and locale
engine-dmo content reprojectRewrite the projection index, relations, shapes and occurrences under the current schema
engine-dmo content restoreReinstate, re-resolve URIs, republish what was live
engine-dmo content structureOverride how one document holds a container field, shared or per_locale; audited
engine-dmo content trashSoft delete; --redirect is required when any locale is live
engine-dmo content updateMerge field values over a locale’s working revision and save; only the fields given change, and null clears one
engine-dmo content variant setMove documents to another entry variant, by --id or every one of --type in --from; values the new variant does not show are set aside, not deleted

engine-dmo content clone

Copy a document as a new draft on a site.

engine-dmo content clone [flags]
FlagTypeDefaultMeaning
--idstring, repeatabledocument id (repeatable)
--ids-fromstringfile with one id per line
--no-tagsboolleave taggings behind
--sitestringtarget site (default: the source’s owner site)
--titlestringtitle of the copy in the source locale

--json prints the text output in the JSON envelope. Runs in a project.

engine-dmo content create

Create a document from a JSON object of field values, validated as the admin validates a save; --publish runs the publish checks.

engine-dmo content create [values] [flags]
ArgumentRequiredRepeatable
valuesnono
FlagTypeDefaultMeaning
--datastringthe field values as a JSON object, or - for standard input
--localestringlocale of the values (default: the source locale)
--publishboolpublish the locale through the publish checks
--sitestringowner site (default: the default site)
--typestringtype key

--json prints the command’s own JSON document. Runs in a project.

engine-dmo content export

Export a type’s documents on a site, or a selection, as JSON or CSV with their working values per locale; audited.

engine-dmo content export [flags]
FlagTypeDefaultMeaning
--formatstringjsonjson | csv
--idstring, repeatablea selection: only this document (repeatable)
--ids-fromstringa selection: a file with one document id a line
--localestring, repeatableonly this locale (repeatable); every locale when left out
--outstringfile to write; standard output when empty or -
--sitestringsite key (default: the default site)
--typestringtype key

--json prints the command’s own JSON document. Runs in a project.

engine-dmo content get

A document’s working and published values by field handle, and its status per locale.

engine-dmo content get <id> [flags]
ArgumentRequiredRepeatable
idyesno
FlagTypeDefaultMeaning
--localestringone locale (default: every locale the document has)

--json prints the command’s own JSON document. Runs in a project.

engine-dmo content hold

Keep a trashed document until someone decides, or --until a date, or --release.

engine-dmo content hold [flags]
FlagTypeDefaultMeaning
--idstring, repeatabledocument id (repeatable)
--ids-fromstringfile with one id per line
--releaseboolrestore the retention window from now
--untilstringpurge on this date (YYYY-MM-DD)

--json prints the text output in the JSON envelope. Runs in a project.

engine-dmo content import

Import a JSON export file as drafts, matched by id or slug, never published; --dry-run writes nothing.

engine-dmo content import [flags]
FlagTypeDefaultMeaning
--dry-runboolsay what would happen to each locale and write nothing
--filestringthe JSON file an export wrote; - reads standard input
--matchstringidid | slug: how a document in the file finds the one it updates
--sitestringsite key (default: the default site)

--json prints the command’s own JSON document. Runs in a project.

Place a legal hold on a document, keeping every revision and refusing its purge; --release removes it.

engine-dmo content legal-hold [flags]
FlagTypeDefaultMeaning
--idstringdocument id
--reasonstringwhy the document is held; recorded with the hold and in the audit log
--releaseboolremove the hold
--untilstringthe last day the hold protects (YYYY-MM-DD); omitted, it holds until released

--json prints the text output in the JSON envelope. Runs in a project.

engine-dmo content list

List documents, one line each.

engine-dmo content list [flags]
FlagTypeDefaultMeaning
--localestringlocale code
--sitestringsite key (default: the default site)
--statusstringdraft | in_review | published | scheduled | archived
--trashedboollist the trash instead
--typestringtype key

--json prints the command’s own JSON document. Runs in a project.

engine-dmo content prune-revisions

Run the revision retention sweep now, resuming an interrupted run; --dry-run says what would go.

engine-dmo content prune-revisions [flags]
FlagTypeDefaultMeaning
--dry-runbooldelete nothing and print what would go

--json prints the command’s own JSON document. Runs in a project.

engine-dmo content publish

Publish a locale through the publish checks, or every locale whose checks pass with --all-locales.

engine-dmo content publish [flags]
FlagTypeDefaultMeaning
--all-localesboolevery locale with a working revision, source first; a locale whose checks fail is skipped and named
--idstring, repeatabledocument id (repeatable)
--ids-fromstringfile with one id per line
--localestringlocale code
--no-redirectstringthe reason a changed live path gets no redirect; audited
--no-sharedboolleave the shared draft unpublished

--json prints the text output in the JSON envelope. Runs in a project.

engine-dmo content purge

Hard delete, irreversible; --expired runs the nightly sweep now.

engine-dmo content purge [flags]
FlagTypeDefaultMeaning
--expiredboolevery trashed document past its purge_after
--idstring, repeatabledocument id (repeatable)
--ids-fromstringfile with one id per line
--yesboolconfirm

--json prints the text output in the JSON envelope. Runs in a project.

engine-dmo content reindex

Queue search indexing for every published document, on every site and locale.

engine-dmo content reindex [flags]
FlagTypeDefaultMeaning
--typestringtype key (default: every type)

--json prints the text output in the JSON envelope. Runs in a project.

engine-dmo content reproject

Rewrite the projection index, relations, shapes and occurrences under the current schema.

engine-dmo content reproject [flags]
FlagTypeDefaultMeaning
--fieldstringa field of --type; the whole document is reprojected, the flag checks the field exists
--typestringtype key (default: every type)

--json prints the text output in the JSON envelope. Runs in a project.

engine-dmo content restore

Reinstate, re-resolve URIs, republish what was live.

engine-dmo content restore [flags]
FlagTypeDefaultMeaning
--idstring, repeatabledocument id (repeatable)
--ids-fromstringfile with one id per line
--slug-on-conflictstringsuffixsuffix | fail

--json prints the text output in the JSON envelope. Runs in a project.

engine-dmo content structure

Override how one document holds a container field, shared or per_locale; audited.

engine-dmo content structure [flags]
FlagTypeDefaultMeaning
--fieldstringa top-level repeater or blocks field
--idstring, repeatabledocument id (repeatable)
--ids-fromstringfile with one id per line
--modestringper_localeshared | per_locale
--reasonstringwhy this document differs; recorded in the audit log

--json prints the text output in the JSON envelope. Runs in a project.

engine-dmo content trash

Soft delete; --redirect is required when any locale is live.

engine-dmo content trash [flags]
FlagTypeDefaultMeaning
--holdboolclear purge_after
--idstring, repeatabledocument id (repeatable)
--ids-fromstringfile with one id per line
--redirectstringparent | /path | none

--json prints the text output in the JSON envelope. Runs in a project.

engine-dmo content update

Merge field values over a locale’s working revision and save; only the fields given change, and null clears one.

engine-dmo content update <id> [values] [flags]
ArgumentRequiredRepeatable
idyesno
valuesnono
FlagTypeDefaultMeaning
--datastringthe field values as a JSON object, or - for standard input
--localestringlocale to save (default: the source locale)
--publishboolpublish the locale through the publish checks

--json prints the command’s own JSON document. Runs in a project.

engine-dmo content variant set

Move documents to another entry variant, by --id or every one of --type in --from; values the new variant does not show are set aside, not deleted.

engine-dmo content variant set [flags]
FlagTypeDefaultMeaning
--dry-runboolwrite nothing and say what each move would set aside
--fromstringmove every live document of --type in this variant (the default variant also holds documents naming none)
--idstring, repeatabledocument id (repeatable)
--ids-fromstringfile with one id per line
--sitestringwith --from, only documents this site owns
--tostringthe variant to move to
--typestringtype key, with --from

--json prints the text output in the JSON envelope. Runs in a project.