Coronavirus (Covid-19): Latest updates and information
Skip to main content Skip to navigation

Retrieve a Module's Timetable Events

Retrieve a list of all scheduled events between two dates that are assigned to the specified module.

Currently, this interface only includes data in Syllabus+. It's safe to use this API on the assumption that if other sources are added, they will be opt-in.

Permission requirements

The user must have Permissions.Module.ViewTimetable ("View a module's timetable") on the module. By default, all logged-in users have this permission on all modules.

Information about API permissions

Definition

GET https://tabula.warwick.ac.uk/api/v1/module/:moduleCode/timetable/events

URL substitution variables

:moduleCode The lowercase form of the module code to get the timetable for, e.g. cs118

Request parameters

academicYear Optional The academic year to fetch the timetable, in the format yy/yy - e.g. 13/14
start Optional The start date to show events between, in the format dd-MMM-yyy - e.g. 01-Dec-2015. Defaults to the current date minus one month
end Optional The end date to show events between, in the format dd-MMM-yyy - e.g. 01-Dec-2015. Defaults to the current date minus one month

Note: The Syllabus+ dataset usually only keeps information for the current academic year. There is a period during August and September where the "calendar" academic year is different to the current "SITS" academic year; i.e. the SITS academic year rolls over "early" to the new academic year. During this time, it may be preferable to explicitly state which academic year you wish to retrieve events for.

Example request

GET https://tabula.warwick.ac.uk/api/v1/module/cs118/timetable/events?start=01-Dec-2015&end=01-May-2016

Response parameters

An unsuccessful response will be returned in the standard format. A successful response will return the HTTP code 200 OK and the following parameters:

success Boolean true
status The string "ok"
events An array of event occurrence objects

Example response

{
  "success": true,
  "status": "ok",
  "events": [
    {
      "eventType": "Lecture",
      "location": {
        "name": "MS.01",
        "locationId": "41283"
      },
      "description": "",
      "context": "CS118",
      "staffUniversityIds": [
        "0603723",
        "1170047"
      ],
      "start": '2014-09-03T09:00:00',
	  "end": '2014-09-03T10:00:00',
      "uid": "45bbe3265829ec49817b4dcb0c51115b",
      "title": "",
      "name": "CS118L",
      "day": "Thursday",
      "comments": null
    },
    {
      "eventType": "Lecture",
      "location": {
        "name": "H0.52",
        "locationId": "21337"
      },
      "description": "",
      "context": "CS118",
      "staffUniversityIds": [
        "0603723",
        "1170047"
      ],
	  "start": '2014-09-04T09:00:00',
	  "end": '2014-09-04T10:00:00',
      "uid": "8149a1f09e05134d5213fe65defaa30f",
      "title": "",
      "name": "CS118L",
      "day": "Monday",
      "comments": null
    }
  ]
}

Tabula API Methods