SazitoSazito SDKv1.2.2
API Reference

CMS

Resolve CMS pages/blog posts and list CMS entities.

Methods

Get Page

Use: cms.getPage(urlPath, options?).

ParameterTypeRequiredDescription
urlPathstringRequiredCMS page URL path, e.g. /about-us.
optionsRequestOptionsOptionalPer-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:

FieldTypeRequiredDescription
filters.pagenumberOptionalPage number.
filters.pageSizenumberOptionalPage size.
filters.cmsPageTypes'normal' | 'blog' | Array<'normal' | 'blog'>OptionalExplicit CMS type filtering.

CMSPage key fields

FieldTypeRequiredDescription
namestringRequiredPage name/title.
urlstringRequiredURL path.
cmsPageType'normal' | 'blog'OptionalPage type.
contentstringOptionalFull page content.
summarystringOptionalSummary/excerpt.
imageImageOptionalFeatured 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

FieldTypeRequired
pagenumberOptional
pageSizenumberOptional
cmsPageTypesCMSPageType | CMSPageType[]Optional

CmsPage

Source: src/types/search.ts

FieldTypeRequired
idnumberOptional
namestringRequired
urlstringRequired
enabledbooleanOptional
cmsPageTypeCMSPageTypeOptional
contentstringOptional
summarystringOptional
imageImageOptional
themeConfiganyOptional
attributesProductAttribute[]Optional
createdAtstringRequired
updatedAtstringRequired

Image

Source: src/types/common.ts

FieldTypeRequired
idnumberRequired
namestringRequired
urlstringRequired
altstringOptional
widthnumberOptional
heightnumberOptional
ordernumberOptional
createdAtstringRequired
updatedAtstringRequired

ProductAttribute

Source: src/types/common.ts

FieldTypeRequired
namestringRequired
valuestringRequired

On this page