This endpoint lets you get data about university courses and
their sections. You can get one course or section at a time,
several courses or sections at a time, or a list of all the
courses.
Parameters:
semester – a six-digit
string
<year><month>. For example, “201401” for 2014’s Winter semester or
“201508” for 2015’s Fall semseter.
See
https://api.umd.io/v0/courses/semesters
for a list of available semesters.
Courses Endpoint
https://api.umd.io/v0/courses
This endpoint lets you get data about university courses and
their sections. You can get one course or section at a time,
several courses or sections at a time, or a list of all the
courses.
Parameters:
semester – a six-digit
string
<year><month>. For example, “201401” for 2014’s Winter semester or
“201508” for 2015’s Fall semseter.
See
https://api.umd.io/v0/courses/semesters
for a list of available semesters.
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.
See the Course object for a
full list of available properties.
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
Trimmed Response:
[{"course_id":"BMGT888W","name":"Special Topics in Supply Chain Management; Workshop in Supply Chain Management","dept_id":"BMGT","credits":"1",..."sections":["BMGT888W-0101","BMGT888W-0101"]},{"course_id":"CMSC100","name":"Bits and Bytes of Computer Science","dept_id":"CMSC","credits":"1",..."sections":["CMSC100-0101","CMSC100-0101"]}...]
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.
See the Course object for a
full list of available properties.
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
Trimmed Response:
[{"course_id":"BMGT888W","name":"Special Topics in Supply Chain Management; Workshop in Supply Chain Management","dept_id":"BMGT","credits":"1",..."sections":["BMGT888W-0101","BMGT888W-0101"]},{"course_id":"CMSC100","name":"Bits and Bytes of Computer Science","dept_id":"CMSC","credits":"1",..."sections":["CMSC100-0101","CMSC100-0101"]}...]
List all courses
List all the courses available (for the given semester, or the
current semester by default).
https://api.umd.io/v0/courses/list
Returns: Array of objects with three properties:
course_id,
name, and
department
Request:
GET https://api.umd.io/v0/courses/list
Trimmed Response:
[{"course_id":"AASP100","name":"Introduction to African American Studies","department":"African American Studies"},{"course_id":"AASP101","name":"Public Policy and the Black Community","department":"African American Studies"}]
List all the courses available (for the given semester, or the
current semester by default).
https://api.umd.io/v0/courses/list
Returns: Array of objects with three properties:
course_id,
name, and
department
Request:
GET https://api.umd.io/v0/courses/list
Trimmed Response:
[{"course_id":"AASP100","name":"Introduction to African American Studies","department":"African American Studies"},{"course_id":"AASP101","name":"Public Policy and the Black Community","department":"African American Studies"}]
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
{"course_id":"ENEE380","name":"Electromagnetic Theory","dept_id":"ENEE","department":"Electrical & Computer Engineering","semester":"201501","credits":"3","grading_method":["Regular"],"core":[],"gen_ed":[],"description":"Introduction to electromagnetic...","relationships":{"coreqs":[],"prereqs":["Prerequisite: PHYS271, PHYS270, ..."],"restrictions":[],"restricted_to":[],"credit_only_granted_for":[],"credit_granted_for":[],"formerly":[],"also_offered_as":[]},"sections":["ENEE380-0101","ENEE380-0102","ENEE380-0103"]}
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
{"course_id":"ENEE380","name":"Electromagnetic Theory","dept_id":"ENEE","department":"Electrical & Computer Engineering","semester":"201501","credits":"3","grading_method":["Regular"],"core":[],"gen_ed":[],"description":"Introduction to electromagnetic...","relationships":{"coreqs":[],"prereqs":["Prerequisite: PHYS271, PHYS270, ..."],"restrictions":[],"restricted_to":[],"credit_only_granted_for":[],"credit_granted_for":[],"formerly":[],"also_offered_as":[]},"sections":["ENEE380-0101","ENEE380-0102","ENEE380-0103"]}
Get courses
Get information about one or more courses.
https://api.umd.io/v0/courses/<course_id>
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.
https://api.umd.io/v0/courses/<course_ids>
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.
Sample Request
GET https://api.umd.io/v0/courses/ENES100
Response:
{"course_id":"ENES100","name":"Introduction to Engineering Design","dept_id":"ENES","department":"Engineering Science","semester":"201501","credits":"3","grading_method":["Regular","Pass-Fail","Audit"],"core":["PS"],"gen_ed":["DSSP"],"description":"Students work as teams to design...","relationships":{"coreqs":["Corequisite: MATH140"]},"sections":["ENES100-0101","ENES100-0201","ENES100-0202","ENES100-0301","ENES100-0302","ENES100-0401","ENES100-0501","ENES100-0502","ENES100-0601","ENES100-0602","ENES100-0801"]}
Get information about one or more courses.
https://api.umd.io/v0/courses/<course_id>
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.
https://api.umd.io/v0/courses/<course_ids>
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.
Sample Request
GET https://api.umd.io/v0/courses/ENES100
Response:
{"course_id":"ENES100","name":"Introduction to Engineering Design","dept_id":"ENES","department":"Engineering Science","semester":"201501","credits":"3","grading_method":["Regular","Pass-Fail","Audit"],"core":["PS"],"gen_ed":["DSSP"],"description":"Students work as teams to design...","relationships":{"coreqs":["Corequisite: MATH140"]},"sections":["ENES100-0101","ENES100-0201","ENES100-0202","ENES100-0301","ENES100-0302","ENES100-0401","ENES100-0501","ENES100-0502","ENES100-0601","ENES100-0602","ENES100-0801"]}
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”.
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”.