Learning Platform API — Test UI
Base URL
no token
Clear token
Health
GET /health
Auth
Name
Email
Password
Role
teacher
student
POST /auth/signup
POST /auth/login
GET /auth/me
Courses
GET /courses
GET /courses/:id
Course body (create / update)
{ "title": "Intro to Node.js", "description": "Build REST APIs with Express and MongoDB.", "category": "backend", "price": 49.99, "published": true }
POST /courses
PATCH /courses/:id
DELETE /courses/:id
Active courseId:
—
Lessons
GET /courses/:id/lessons
Lesson body (add / update)
{ "title": "Setting up Express", "description": "Project scaffolding and first route.", "videoUrl": "https://example.com/placeholder.mp4", "order": 0 }
POST .../lessons
PATCH /lessons/:id
DELETE /lessons/:id
Active lessonId:
—
Enrollment
POST .../enroll
DELETE .../enroll
GET /enrollments/me
GET .../students
Uploads (S3)
GET /uploads/aws-test
Pick a video to upload (full presigned flow)
POST /uploads/video-url → PUT to S3
Requests the presigned URL, then PUTs the file
directly to S3
with the matching Content-Type.
Object key (auto-filled after upload)
GET /uploads/view-url (presigned playback)
Response
Responses appear here…