Self-Paced Training Language

SPTL
Specification

SPTL is a declarative JSON format for authoring fully self-contained, interactive, self-paced training courses on Skillenter vCampus. One file — no external dependencies.

Document structure

Training

Root document

Module

Chapter

Lesson

Learning unit

Block

Content piece

Block types

View full block reference

Versions

Quick start

training.sptl.json
{
  "sptlVersion": "1.1",
  "id": "my-training",
  "status": "published",
  "meta": {
    "title": "My First Training",
    "description": "A quick intro.",
    "category": "General",
    "level": "beginner"
  },
  "settings": {
    "navigation": "linear",
    "passingScore": 70,
    "showProgress": true,
    "allowRetakes": true,
    "certificateOnCompletion": true,
    "showCorrectAnswers": true,
    "showTimer": false,
    "requireAllLessons": true
  },
  "modules": [
    {
      "id": "mod-1",
      "title": "Getting Started",
      "lessons": [
        {
          "id": "les-1",
          "title": "Introduction",
          "type": "lesson",
          "blocks": [
            { "type": "text", "content": "## Hello!\n\nWelcome to SPTL." }
          ]
        }
      ]
    }
  ],
  "createdAt": "2026-01-01T00:00:00.000Z",
  "updatedAt": "2026-01-01T00:00:00.000Z"
}