Skip to content

CMS Page — Update

Updates a CMS page using a locale-nested payload.

Locale-nested payload required

Unlike Create (top-level fields broadcast to all locales), Update validates and writes per-locale via nested blocks:

json
{
  "locale": "en",
  "channels": [1],
  "en": {
    "url_key": "about-us",
    "page_title": "About Us",
    "html_content": "<h1>About Us</h1>"
  }
}

The top-level locale field names which locale block is being updated. url_key uniqueness excludes the current page (no false-positive collisions against itself).

Endpoint

EndpointMethod
/api/admin/cms/pages/{id}PUT

Request body

FieldTypeRequiredNotes
localestringyesNames which locale block is being updated.
channelsint[]yesNon-empty array of existing channel IDs.
<locale>objectyesPer-locale block — url_key, page_title, html_content (required), plus optional meta_*.

Response

200 OK — same shape as GET /api/admin/cms/pages/{id}.

Errors

HTTPCause
404 Not FoundPage not found.
422 Unprocessable EntityMissing nested fields, duplicate url_key, or empty channels.

Released under the MIT License.