Curtin Courses Index


Info

This application crawls data from the Curtin Course Handbook. Since Curtin doesn't provide an API, we parse the HTML webpages, which are occassionally malformed. All information provided by this application is publically available in the Curtin Handbook, just put into a more digestible format.

API

The Curtin Courses Index provides an API that you can use to get information about all of Curtin's units and courses.

As always, this application is provided in good faith. Information in the handbook doesn't change very often, so please cache your queries where possible to make this application faster for everyone, especially in the large dataset endpoints.

Search

Path Params Example Description
/api/search ?query= /api/search?query=Mech Search for both courses and units, with up to 6 results of each.
/api/search/courses ?query= /api/search/courses?query=Mech Search for courses, with up to 10 results.
/api/search/units ?query= /api/search/units?query=Mech Search for units, with up to 10 results.

Units

Path Params Example Description
/api/units /api/units Brief description of all units. This is a large data endpoint.
/api/units/:code :code /api/units/MXEN2000 Full description of a single unit, including it's prerequisites postfix expression. Multiple units can be selected by separating them via commas.
/api/units/:code/courses :code /api/units/MXEN2000/courses Same as the /api/units/:code endpoint, but includes a listing of all courses this unit belongs to.

Courses

Path Params Example Description
/api/courses /api/courses Brief description of all courses. This is a large data endpoint.
/api/courses/:code :code /api/courses/MDDU-MXNCS Full description of a course, including its units and their prerequisites.
/api/courses/:code/streams :code /api/courses/MDDU-MXNCS/streams Listing of the streams of a course. Note that the stream parent is listed in all other endpoints, but stream children are only listed in this one.