# Course modules & lesson editor

Use course modules & lesson editor in the school workspace. Build a course structure and let learners open lessons and record progress.

Category: Academics
Guide: https://avkul.in/docs/guides/screen-school-lms-id-detail/
Guided sample demo: https://avkul.in/docs/demo/screen-school-lms-id-detail/
Snapshot: 11 October 2026

## Features

- Add module
- Add lesson
- Get Course
- Update Course
- Remove Course
- Add Module
- Remove Module
- Add Lesson

## Access and setup

Intended access: Assigned account with the required permissions
- A school account with the permissions shown below.
- Choose the relevant school, academic session or child before working.

Permission keys: lms:view, lms:update, lms:delete

## Workflow

1. Create a course and its details.
2. Add modules and lessons in the intended order.
3. Attach supported learning media and review visibility.
4. Open the learner course view and track lesson progress.

## Fields and controls

- isPublished (boolean, optional)
- title (string, declared required)
- sortOrder (number, optional)
- contentType (string, declared required)
- videoUrl (string, optional)
- body (string, optional)
- durationMin (number, optional)

## Current limits

- A course must be available to the learner before it appears in self-service. Video delivery depends on the stored asset and browser support.

## Actual application access

- https://avkul.in/en/school/lms — select the actual record from this list.

## API reference

- GET /api/v1/lms/courses/:id — Get Course; lms:view
- PATCH /api/v1/lms/courses/:id — Update Course; lms:update
- DELETE /api/v1/lms/courses/:id — Remove Course; lms:delete
- POST /api/v1/lms/courses/:id/modules — Add Module; lms:update
- DELETE /api/v1/lms/modules/:id — Remove Module; lms:update
- POST /api/v1/lms/modules/:id/lessons — Add Lesson; lms:update
- DELETE /api/v1/lms/lessons/:id — Remove Lesson; lms:update

## 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.
