Documentation Index
Fetch the complete documentation index at: https://docs.dokstamp.com/llms.txt
Use this file to discover all available pages before exploring further.
Courses
A course represents an academic program — a degree, diploma, professional course, or training program. It connects modules into a structured curriculum and provides the academic context for certificates.
The course object
{
"uuid": "c3d4e5f6-a7b8-9012-cdef-123456789012",
"code": "BCS-2024",
"name": "Bachelor of Computer Science",
"description": "A 4-year undergraduate program in computer science.",
"workload_hours": 3200,
"area": "Technology",
"version": "2024.1",
"status": "active",
"institution": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"name": "Federal University of Technology"
},
"organization": null,
"created_at": "2024-01-15T10:00:00.000000Z"
}
| Field | Type | Description |
|---|
uuid | string | Unique identifier |
code | string | Internal course code |
name | string | Course name (max 255 chars) |
description | string | Description of the program |
workload_hours | integer | Total program hours |
area | string | Knowledge area (e.g., Technology, Health) |
version | string | Curriculum version |
status | enum | draft, active, archived |
institution | object | Parent institution |
organization | object|null | Optional sub-unit (faculty/department) |
List courses
curl "https://api.dokstamp.com/courses?where[status]=active&sort[column]=name" \
-H "Authorization: Bearer {TOKEN}" \
-H "Accept: application/json" \
-H "X-Tenant: {TENANT}"
Create a course
| Parameter | Type | Required | Description |
|---|
name | string | Yes | Course name |
institution_uuid | string | Yes | Parent institution UUID |
code | string | No | Internal code |
description | string | No | Program description |
workload_hours | integer | No | Total program hours |
area | string | No | Knowledge area |
version | string | No | Curriculum version |
status | enum | No | draft (default), active, archived |
organization_uuid | string | No | Sub-unit (faculty/department) UUID |
curl -X POST https://api.dokstamp.com/courses \
-H "Authorization: Bearer {TOKEN}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "X-Tenant: {TENANT}" \
-d '{
"name": "Bachelor of Computer Science",
"code": "BCS-2024",
"institution_uuid": "550e8400-e29b-41d4-a716-446655440000",
"workload_hours": 3200,
"area": "Technology",
"version": "2024.1",
"status": "active"
}'
Response 201:
{
"data": {
"uuid": "c3d4e5f6-a7b8-9012-cdef-123456789012",
"name": "Bachelor of Computer Science",
"status": "active",
...
}
}
Get, update, delete
GET /courses/{uuid}
PATCH /courses/{uuid}
PUT /courses/{uuid}
DELETE /courses/{uuid}
DELETE /courses/batch/destroy
Status transitions
| Status | Meaning |
|---|
draft | Course is being configured — not yet accepting enrollments |
active | Course is live — certificates can be issued |
archived | Course is no longer offered — historical records remain |
Next steps for courses
After creating a course:
- Attach modules → Course Modules
- Create module groups → Module Groups
- Create cohorts → Cohorts
- Issue certificates → Certificates