Skip to end of banner
Go to start of banner

Courses data

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Various JSON schemas for Courses can be found in Gitlab here: https://github.com/folio-org/mod-courses/tree/master/ramls. This information is most relevant if you are planning to import course data from another system, or if you are planning to use / write reports that use the underlying JSON information from the courses app.

A course viewed in FOLIO actually consists of two pieces of data, a course, and a courselisting.

course object stores the information from the bottom part of the created course - in Basic course information



courselisting stores the information from the bottom part of the created course in the Course listing information 

Once a course is created and saved, you can then edit the course to add an instructor, which is stored as its own object (instructor.json) which is linked to the courselisting. You also have other associated data pieces that are configured in settings and linked to either the course or courselisting - department, course type, term and location. (Note that locations are configured in Inventory settings, not Courses settings.)

So, what does all of this mean?

  • In the UI, what you think of as one course actually has two underlying objects - the course, and the courselisting. The course has an ID field that links it to the courselisting id.
  • If two are more courses are cross-listed, they share the same courselisting object
    • Example: Suppose you have three courses that are cross listed - History 201, PoliSci 210, and German 203. 
      • There are three course objects - a separate one each for History 201, PoliSci 210, and German 203.
      • There is one courselisting object that is shared between the three courses. That means that if you looked at the course object for each of the three courses, they would all have the same courseListingId.
  • Links to instructor information are stored on the courselisting object - that means that if courses are crosslisted with each other, they will all show the same instructors. There is no way for crosslisted courses to have a different instructor for each crosslisting. 
  • The link to a term is stored on the courselisting object - that means that if courses are crosslisted with each other, they will all have the same term.
  • Items on reserve (stored in reserve.json) link to the courseListingId - this means that all crosslisted courses share the same list of reserve items. There is no way for crosslisted courses to have different items on reserve for different crosslistings.


  • No labels