Description
Table of Contents
The following is a list of API endpoints the website supports.
/api/courses.json
The courses endpoint is a list of all course exam statistics present on the website. It contains an unsorted array of all grade report pages without the descriptions.
You can find the grade report summary calculation code in either
course.html
or
course.mjs.
The automatic mapping of hours (semester working hours) to ects for imports can be found in
course_functions.py.
It is not always correct, but offers an acceptable default.
-
schoolis one of the items in the schools API. -
examTypeis eitherendtermorretake. -
semesteris in the formatYYYY(W|S)S -
nameis the full English name of the course from the TUMOnline website. -
dateis the date and time of the exam. When the contributor doesn't specify it, a default is used, so it shouldn't be relied on.
Imagining this endpoint to be exported from a database, <school,code,semester,examType>
would be the unique primary key.
[
{
"school": "CIT",
"code": "IN0004",
"semester": "2011WS",
"examType": "endterm",
"name": "Introduction to Computer Organization and Technology - Computer Architecture",
"date": "2012-02-15 12:00:00 +0100",
"ects": 8,
"hours": 6.0,
"mode": "written",
"lang": "en",
"peopleTotal": 359,
"peopleFailed": 76,
"attemptsTotal": 312,
"attemptsFailedPercent": 0.24358974358974358,
"averageTotal": 3.386217948717949,
"averagePassed": 3.0271186440677966,
"grades": [
{
"grade": 1.0,
"people": 4
},
//...
]
},
//...
]/api/schools.json
The schools endpoint is a list of all supported schools, institutes, and departments present on the website. It contains an unsorted array of all school pages without the descriptions.
Note that this list is incomplete and is expanded manually when a course from a new school or department is added.
The course code prefix is compared against deps to assign a school.
The automatic mapping of deps to school code for imports can be found in
course_functions.py.
[
{
"code": "CIT",
"name": "School of Computation, Information and Technology",
"link": "https://www.cit.tum.de/en/",
"deps": [
{
"code": "EI",
"link": "https://www.ei.tum.de/",
"name": "Electrical and Computer Engineering"
},
//...
]
},
//...
]