Skip to content

CMS Page — Create

Creates a new CMS page.

Create takes the translated fields — page_title, html_content, url_key, and the meta_* set — at the top level, and the same values are written to every configured locale. Update works the other way round: it requires a locale-nested payload such as { "en": { "page_title": "…" } } and touches only the locale you name. Send a create payload to update and nothing is written.

Endpoint

EndpointMethod
/api/admin/cms/pagesPOST

Request body

FieldTypeRequiredNotes
url_keystringyesMust be unique on cms_page_translations and pass slug regex.
page_titlestringyes
html_contentstringyes
channelsint[]yesNon-empty array of existing channel IDs.
meta_titlestringno
meta_keywordsstringno
meta_descriptionstringno

Response

201 Created returning the same shape as GET /api/admin/cms/pages/{id}.

Errors

HTTPCause
422 Unprocessable EntityValidation failure (missing required field, duplicate url_key, empty channels).

Released under the MIT License.