# School website CMS

Manage school themes, content pages and published website information from the ERP.

Category: Websites
Guide: https://avkul.in/docs/guides/module-website/
Guided sample demo: https://avkul.in/docs/demo/module-website/
Snapshot: 11 October 2026

## Features

- Themes
- Theme activation
- Page content
- Draft and publish
- Public school pages
- Branding and contact

## Access and setup

Intended access: Assigned account with the required permissions
- An assigned school account with the required permissions.
- The academic, student or staff setup used by this workflow.

Permission keys: website:view, website:create, website:update, website:delete

## Workflow

1. Review the school website theme and branding.
2. Create or edit the intended content page.
3. Preview and check the content and contact information.
4. Publish the page and review the public school URL.

## Fields and controls

- name (string, declared required)
- configJson (Record<string, unknown>, optional)
- isActive (boolean, optional)
- slug (string, declared required)
- title (string, declared required)
- type (string, optional)
- themeId (string, optional)
- contentJson (Record<string, unknown>, optional)
- seoJson (Record<string, unknown>, optional)
- sortOrder (number, optional)
- status (string, declared required)

## Current limits

- School website content is separate from the platform marketing Landing Page CMS. Publish controls use school ownership and permissions.

## Actual application access

- https://avkul.in/en/school/website

## API reference

- GET /api/v1/website/themes — List Themes; website:view
- POST /api/v1/website/themes — Create Theme; website:create
- PATCH /api/v1/website/themes/:id — Update Theme; website:update
- POST /api/v1/website/themes/:id/activate — Activate Theme; website:update
- DELETE /api/v1/website/themes/:id — Remove Theme; website:delete
- GET /api/v1/website/pages — List Pages; website:view
- POST /api/v1/website/pages — Create Page; website:create
- PATCH /api/v1/website/pages/:id — Update Page; website:update
- POST /api/v1/website/pages/:id/publish — Publish Page; website:update
- DELETE /api/v1/website/pages/:id — Remove Page; website:delete
- GET /api/v1/website/public/:schoolCode — Get Public Site; Public/capability access
- GET /api/v1/website/public/:schoolCode/:slug — Get Public Page; Public/capability access

## Demo access

No login is required for the guided sample demo. Its fictional records and actions stay in this browser tab; they do not modify ERP records or send messages/payments. An assigned account is required for the actual ERP links.

Source inventory checked on 11 October 2026. This source inventory is not a certification of every external provider or device flow.
