API Reference
CMS
Resolve CMS pages/blog posts and list CMS entities.
Methods
Get Page
Use: cms.getPage(urlPath, options?).
| Parameter | Type | Required | Description |
|---|---|---|---|
urlPath | string | Required | CMS page URL path, e.g. /about-us. |
options | RequestOptions | Optional | Per-request controls. |
Returns: SazitoResponse<CMSPage>.
Throws: when resolved route is not a non-blog CMS page.
List Pages
Use: cms.listPages(filters?, options?).
Get Blog Post
Use: cms.getBlogPost(urlPath, options?).
Returns blog page by URL path.
Throws: when resolved route is not a blog page.
List Blog Posts
Use: cms.listBlogPosts(filters?, options?).
List All
Use: cms.listAll(filters?, options?).
For list methods, filters fields are:
| Field | Type | Required | Description |
|---|---|---|---|
filters.page | number | Optional | Page number. |
filters.pageSize | number | Optional | Page size. |
filters.cmsPageTypes | 'normal' | 'blog' | Array<'normal' | 'blog'> | Optional | Explicit CMS type filtering. |
CMSPage key fields
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Required | Page name/title. |
url | string | Required | URL path. |
cmsPageType | 'normal' | 'blog' | Optional | Page type. |
content | string | Optional | Full page content. |
summary | string | Optional | Summary/excerpt. |
image | Image | Optional | Featured image. |
Examples
// app/lib/sazito-client.ts
import { createSazitoClient } from '@sazito/client-sdk';
export const sazito = createSazitoClient({
domain: process.env.NEXT_PUBLIC_SAZITO_DOMAIN!,
});// app/[lang]/(home)/page.tsx
'use client';
import { useEffect, useState } from 'react';
import { sazito } from '@/app/lib/sazito-client';
export default function Example() {
const [data, setData] = useState<any>(null);
useEffect(() => {
sazito.cms.listAll({ page: 1, pageSize: 10 }).then((res) => setData(res.data ?? null));
}, []);
return <pre>{JSON.stringify(data, null, 2)}</pre>;
}Type Details
The following tables are generated from SDK TypeScript types and include nested object fields.
CMSFilters
Source: src/api/cms.ts
| Field | Type | Required |
|---|---|---|
page | number | Optional |
pageSize | number | Optional |
cmsPageTypes | CMSPageType | CMSPageType[] | Optional |
CmsPage
Source: src/types/search.ts
| Field | Type | Required |
|---|---|---|
id | number | Optional |
name | string | Required |
url | string | Required |
enabled | boolean | Optional |
cmsPageType | CMSPageType | Optional |
content | string | Optional |
summary | string | Optional |
image | Image | Optional |
themeConfig | any | Optional |
attributes | ProductAttribute[] | Optional |
createdAt | string | Required |
updatedAt | string | Required |
Image
Source: src/types/common.ts
| Field | Type | Required |
|---|---|---|
id | number | Required |
name | string | Required |
url | string | Required |
alt | string | Optional |
width | number | Optional |
height | number | Optional |
order | number | Optional |
createdAt | string | Required |
updatedAt | string | Required |
ProductAttribute
Source: src/types/common.ts
| Field | Type | Required |
|---|---|---|
name | string | Required |
value | string | Required |