GET /api/v1/student/{studentId}/dashboard

Retrieve comprehensive student dashboard with profile, statistics, active units, upcoming assessments, recent grades, and notifications - everything a student LMS dashboard should have

Path parameters

  • studentId string Required

    Unique identifier of the student

Responses

  • 200 application/json

    Student dashboard retrieved successfully

    Hide response attributes Show response attributes object
    • message string Required

      Success message

    • success boolean Required

      Success status

    • dashboard object Required

      Dashboard data

      Hide dashboard attributes Show dashboard attributes object
      • profile object Required

        Student profile

        Hide profile attributes Show profile attributes object
        • id string Required

          Profile ID

        • fullName string Required

          Full name

        • phone string

          Phone number

        • createdAt string Required

          Created timestamp

        • updatedAt string Required

          Updated timestamp

      • stats object Required

        Dashboard statistics

        Hide stats attributes Show stats attributes object
        • totalActiveUnits number Required

          Total active units

        • completedUnits number Required

          Completed units

        • failedUnits number Required

          Failed units

        • currentGPA number Required

          Current semester GPA

        • overallGPA number Required

          Overall GPA

        • pendingAssignments number Required

          Pending assignments

        • upcomingExams number Required

          Upcoming exams

        • unreadNotifications number Required

          Unread notifications

      • activeUnits array[object] Required

        Active units

        Hide activeUnits attributes Show activeUnits attributes object
        • id string Required

          Student unit ID

        • unit object Required

          Unit offering information

          Hide unit attributes Show unit attributes object
          • id string Required

            Unit offering ID

          • Code string Required

            Unit code

          • personalizedOutline string

            Personalized outline

          • unitVersion object Required

            Unit version information

            Hide unitVersion attributes Show unitVersion attributes object
            • id string Required

              Unit version ID

            • title string Required

              Unit title

            • description string Required

              Unit description

            • totalMarks number Required

              Total marks

            • examMarks number Required

              Exam marks

            • otherMarks number Required

              Other marks

            • hasLabs boolean Required

              Has labs

          • semester object Required

            Semester information

            Hide semester attributes Show semester attributes object
            • id string Required

              Semester ID

            • name string Required

              Semester name

            • shortCode string Required

              Short code

            • startDate string Required

              Start date

            • endDate string Required

              End date

          • lecturer object Required

            Lecturer information

            Hide lecturer attributes Show lecturer attributes object
            • id string Required

              Lecturer ID

            • userId string Required

              User ID

            • user object Required

              User information

              Hide user attributes Show user attributes object
              • id string Required

                User ID

              • email string Required

                Email address

              • role string Required

                User role

                Values are STUDENT, LECTURER, or ADMIN.

              • status string Required

                User status

                Values are ACTIVE, SUSPENDED, or DELETED.

              • profile object

                User profile

                Hide profile attributes Show profile attributes object
                • id string Required

                  Profile ID

                • fullName string Required

                  Full name

                • phone string

                  Phone number

                • createdAt string Required

                  Created timestamp

                • updatedAt string Required

                  Updated timestamp

              • createdAt string Required

                Created timestamp

              • updatedAt string Required

                Updated timestamp

          • studentGroupingsEnabled boolean Required

            Student groupings enabled

          • createdAt string Required

            Created timestamp

          • updatedAt string Required

            Updated timestamp

        • status string Required

          Unit status

          Values are ACTIVE, UNDER_REVIEW, PASSED, FAILED, RETAKE, EXTERNAL_REPEAT, NOT_STARTED, PAUSED, UNCATEGORIZED, or PENDING.

        • createdAt string Required

          Created timestamp

        • updatedAt string Required

          Updated timestamp

      • upcomingAssessments array[object] Required

        Upcoming assessments

        Hide upcomingAssessments attributes Show upcomingAssessments attributes object
        • id string Required

          Assessment ID

        • title string Required

          Assessment title

        • type string Required

          Assessment type

          Values are assignment, cat, or exam.

        • unitCode string Required

          Unit code

        • unitTitle string Required

          Unit title

        • dueDate string Required

          Due date

        • daysRemaining number Required

          Days remaining

        • totalMarks number Required

          Total marks

        • status string Required

          Status

      • recentGrades array[object] Required

        Recent grades

        Hide recentGrades attributes Show recentGrades attributes object
        • id string Required

          Grade ID

        • unitCode string Required

          Unit code

        • unitTitle string Required

          Unit title

        • assessmentType string Required

          Assessment type

        • score number Required

          Score

        • grade string Required

          Grade letter

        • createdAt string Required

          Created timestamp

      • recentNotifications array[object] Required

        Recent notifications

        Hide recentNotifications attributes Show recentNotifications attributes object
        • id string Required

          Notification ID

        • title string Required

          Notification title

        • message string Required

          Notification message

        • isRead boolean Required

          Read status

        • createdAt string Required

          Created timestamp

  • 400 application/json

    Default bad request error 400 response

    Hide response attributes Show response attributes object
    • message string Required

      Response message

    • error string Required
    • statusCode number Required
  • 404

    Student not found

GET /api/v1/student/{studentId}/dashboard
curl \
 --request GET 'http://localhost:3500/api/v1/student/uuid-string/dashboard'
Response examples (200)
{
  "message": "string",
  "success": true,
  "dashboard": {
    "profile": {
      "id": "uuid-string",
      "fullName": "John Doe",
      "phone": "+1234567890",
      "createdAt": "2025-09-25T10:30:00.000Z",
      "updatedAt": "2025-09-25T10:30:00.000Z"
    },
    "stats": {
      "totalActiveUnits": 5,
      "completedUnits": 12,
      "failedUnits": 1,
      "currentGPA": 3.5,
      "overallGPA": 3.2,
      "pendingAssignments": 3,
      "upcomingExams": 2,
      "unreadNotifications": 5
    },
    "activeUnits": [
      {
        "id": "uuid-string",
        "unit": {
          "id": "uuid-string",
          "Code": "CS201",
          "personalizedOutline": "string",
          "unitVersion": {
            "id": "uuid-string",
            "title": "Data Structures and Algorithms",
            "description": "Introduction to data structures and algorithms",
            "totalMarks": 100,
            "examMarks": 60,
            "otherMarks": 40,
            "hasLabs": true
          },
          "semester": {
            "id": "uuid-string",
            "name": "Fall 2023",
            "shortCode": "F23",
            "startDate": "2023-09-01T00:00:00.000Z",
            "endDate": "2023-12-31T23:59:59.000Z"
          },
          "lecturer": {
            "id": "uuid-string",
            "userId": "uuid-string",
            "user": {
              "id": "uuid-string",
              "email": "student@example.com",
              "role": "STUDENT",
              "status": "ACTIVE",
              "profile": {
                "id": "uuid-string",
                "fullName": "John Doe",
                "phone": "+1234567890",
                "createdAt": "2025-09-25T10:30:00.000Z",
                "updatedAt": "2025-09-25T10:30:00.000Z"
              },
              "createdAt": "2025-09-25T10:30:00.000Z",
              "updatedAt": "2025-09-25T10:30:00.000Z"
            }
          },
          "studentGroupingsEnabled": false,
          "createdAt": "2025-09-25T10:30:00.000Z",
          "updatedAt": "2025-09-25T10:30:00.000Z"
        },
        "status": "ACTIVE",
        "createdAt": "2025-09-25T10:30:00.000Z",
        "updatedAt": "2025-09-25T10:30:00.000Z"
      }
    ],
    "upcomingAssessments": [
      {
        "id": "uuid-string",
        "title": "Programming Assignment 1",
        "type": "assignment",
        "unitCode": "CS201",
        "unitTitle": "Data Structures and Algorithms",
        "dueDate": "2025-10-15T23:59:59.000Z",
        "daysRemaining": 5,
        "totalMarks": 15,
        "status": "string"
      }
    ],
    "recentGrades": [
      {
        "id": "uuid-string",
        "unitCode": "CS201",
        "unitTitle": "Data Structures and Algorithms",
        "assessmentType": "assignment",
        "score": 85.5,
        "grade": "A",
        "createdAt": "2025-09-25T10:30:00.000Z"
      }
    ],
    "recentNotifications": [
      {
        "id": "uuid-string",
        "title": "Assignment Due",
        "message": "Your assignment is due tomorrow",
        "isRead": false,
        "createdAt": "2025-09-25T10:30:00.000Z"
      }
    ]
  }
}
Response examples (400)
{
  "message": "string",
  "error": "string",
  "statusCode": 42.0
}