CMS Pages — List
Paginated CMS-pages list (datagrid parity), returned in the { data, meta } envelope.
TIP
For what CMS Pages are, how multi-locale / multi-channel works, and the previewUrl / htmlContent semantics, see the CMS Pages overview.
Endpoint
| Endpoint | Method |
|---|---|
/api/admin/cms/pages | GET |
Query parameters
| Param | Type | Notes |
|---|---|---|
page | integer | 1-based page number (default 1). |
per_page | integer | Default 10, max 50. |
id | integer | Filter by page ID. |
page_title | string | Partial title match. |
url_key | string | Partial url_key match. |
channel | integer | Filter by channel ID. |
locale | string | Locale code used for translation resolution. |
sort | string | One of id, page_title, url_key, created_at. |
order | string | asc or desc. |
Response
200 OK — { data, meta } envelope. Each row carries every cheap column:
| Field | Type | Notes |
|---|---|---|
id | integer | Page ID. |
urlKey | string | Storefront URL slug. |
pageTitle | string | Title resolved for the active locale. |
htmlContent | null | Detail-only — always null on the listing; fetch the body from the detail endpoint. |
metaTitle | string|null | SEO title. |
metaKeywords | string|null | SEO keywords. |
metaDescription | string|null | SEO description. |
layout | string|null | Page layout identifier. |
previewUrl | string | Live storefront URL for the page (the "View" action). |
locale | string | Resolved locale code. |
channel | string | Resolved channel code. |
channels | string[] | Codes of all channels the page is assigned to. |
createdAt | string | ISO 8601. |
updatedAt | string | ISO 8601. |

