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.
-
school
is one of the items in the schools API. -
examType
is eitherendterm
orretake
. -
semester
is in the formatYYYY(W|S)S
-
name
is the full English name of the course from the TUMOnline website. -
date
is 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"
},
//...
]
},
//...
]