Update or create progress tracking for a specific lesson. Records completion percentage, updates last accessed time, and automatically updates the unit resume point. Use this endpoint whenever a student completes a section of a lesson or finishes the entire lesson.
POST
/api/v1/student/{studentId}/units/{studentUnitId}/progress
curl \
--request POST 'http://localhost:3500/api/v1/student/uuid-string/units/uuid-string/progress' \
--header "Content-Type: application/json" \
--data '{"lessonId":"uuid-string","progress":75,"remarks":"Completed video section"}'
Request examples
{
"lessonId": "uuid-string",
"progress": 75,
"remarks": "Completed video section"
}
Response examples (200)
{
"message": "string",
"success": true,
"progress": {
"id": "uuid-string",
"studentUnitId": "uuid-string",
"lessonId": "uuid-string",
"lessonTitle": "Introduction to Arrays",
"progress": 75,
"lastAccessedAt": "2025-10-03T10:30:00.000Z",
"remarks": "string",
"createdAt": "2025-09-25T10:30:00.000Z",
"updatedAt": "2025-09-25T10:30:00.000Z"
},
"overallProgress": 45
}