sort – a comma-separated list of course properties. Defaults to ASCENDING order, use a - (minus) prefix for DESCENDING order.
For example, ?sort=course_id,-credits sorts the results ASCENDING by course_id and DESCENDING by credits.
To search for courses, use each course property as a parameter and one of the following comparisions: = (equals), != (not equals), < (less than), > (greater than), <= (less than or equals) and >= (greater than or equals) followed by the value or a list of values.
For example, ?dept_id=CMSC,BMGT&credits<2 gives all courses in the CMSC or BMGT departments worth less than 2 credits.
When searching array properties, the | (pipe) delimeter may be used instead of a comma to only return results that all the values.
For example, ?grading_method=Audit|Pass-Fail gives all courses whose grading method is both Audit and Pass-Fail.
Request: GET https://api.umd.io/v0/courses?dept_id=CMSC,BMGT&credits<2
List all courses
List all the courses available (for the given semester, or the current semester by default).
Returns: Array of objects with three properties: course_id, name, and department
Request: GET https://api.umd.io/v0/courses/list
The course object
The course object represents a single UMD course. The properties of a course are:
course_id – a unique string ID with a four-letter dept_id followed by a three digit course number and an optional letter. Examples: “CSMC132”, “BMGT468Z”.
name – string name of the course.
dept_id – Four-letter string like ENGL or BMGT.
department – Full name of the department that offers a course.
semester – Six-digit number identifying the semester the course is offered. Currently, the API only offers courses for the current semester, but that will change soon.
credits – One-digit number of credits the course is worth.
grading_method – Array of string grading options available. The possible options are “Regular”, “Pass-Fail”, “Audit”, and “Sat-Fail”
core – Array of strings of CORE requirements filled by a course.
gen_ed – Array of strings of GEN. ED requirements filled by a course.
description – String description of a course.
relationships – contains the relationships and restrictions of a course which can be: coreqs, prereqs, restrictions, restricted_to, credit_only_granted_for, credit_granted_for,formerly, and also_offered_as.
sections – Array of section_id strings of the sections of a course. See section object.
Sample course object
Get information about one or more courses.
Get information about one course.
Returns: The course object specified, or a 404 error, letting you know that the course doesn’t exist on the database.
Get information about multiple courses where course_ids is a comma-seperated list of course_id’s.
Returns: Array of course objects. If one of the course objects does not exist, the rest are still returned.
The section object represents a single section of a course. The properties of a section are:
section_id – a unique section identifier, like ENES100-0101. Always the related course_id with a four-digit section number appended to it.
course_id – The course that the section belongs to.
instructors – An Array of names of the instructors for this section.
seats – The total number of seats offered in a section.
semester – Six-digit number specifying the semester a course is offered.
meetings – Array of JSON objects with the following properties:
days: string of days for that meeting, like “MWF”, “TuTh”.
start_time: start time of the meeting, like “9:00am”.
end_time: end time of the meeting.
building: building where the meeting takes place, like “KEY”.
room: Four digit room code where the meeting takes place.
classtype: String indicates what type of meeting. Could be “Lecture”, “Discussion”, or “Lab”.
Sample section object
Get information about a section or multiple sections.