EMS-UGC API Docs
Settings

Faculty & Program

Faculty, Level, and Program Management APIs

Base URL: http://192.168.100.250/


Endpoints

MethodEndpointDescription
GET/facultiesList all faculties with levels
POST/facultiesCreate faculty
PUT/faculties/{id}Update faculty
DELETE/faculties/{id}Delete faculty
POST/faculties/levelsCreate level
PUT/faculties/levels/{id}Update level
DELETE/faculties/levels/{id}Delete level
GET/faculties/{facultyId}/programsList programs by faculty
POST/faculties/{facultyId}/programsCreate program
PUT/faculties/programs/{id}Update program
DELETE/faculties/programs/{id}Delete program
GET/programs/{programId}/semestersGet semesters for a program

List

GET /faculties
Accept: application/json

Response includes faculties (with nested programs) and levels.


Create Faculty

POST /faculties
Content-Type: application/json

Request Body:

{
  "name": "Management",
  "code": "MGT",
  "description": "Faculty of Management"
}

Update Faculty

PUT /faculties/{id}
Content-Type: application/json

Request Body:

{
  "name": "Management",
  "code": "MGT",
  "description": "Updated"
}

Delete Faculty

DELETE /faculties/{id}

Levels

Create Level

POST /faculties/levels
Content-Type: application/json

Request Body:

{
  "title": "Bachelor",
  "slug": "bachelor",
  "description": "Undergraduate"
}

Update Level

PUT /faculties/levels/{id}

Delete Level

DELETE /faculties/levels/{id}

Programs

List Programs by Faculty

GET /faculties/{facultyId}/programs

Create Program

POST /faculties/{facultyId}/programs
Content-Type: application/json

Request Body:

{
  "name": "BBS (Year)",
  "code": "BBS",
  "description": "Bachelor of Business Studies",
  "duration_years": 4,
  "duration_semesters": 4,
  "level_id": 1
}

Auto-generates semesters based on duration_semesters.

Update Program

PUT /faculties/programs/{id}

Delete Program

DELETE /faculties/programs/{id}

Semesters

See Program Semesters API for full CRUD documentation.


Semester Subjects

See Subject API for full CRUD documentation:

MethodEndpoint
GET/programs/{programId}/semesters/{semesterId}/subjects
POST/programs/{programId}/semesters/{semesterId}/subjects
PUT/programs/{programId}/semesters/{semesterId}/subjects/{subjectId}
DELETE/programs/{programId}/semesters/{semesterId}/subjects/{subjectId}

On this page