Skip to navigation

Add a new catalogue subject

View as Markdown

Creates a subject in the institution’s catalogue. code and year are required and together identify it.

This never updates. If a subject already exists for that (code, year) the response is 409, so use PUT /{code}/{year} instead. An externalIds value already registered against a different subject is a 400.

Authentication

AuthorizationBearer

Paste a Keycloak access token (no "Bearer " prefix)

Request

This endpoint expects an object.
codestringOptional
The subject code, e.g. "MATH1131".
yearintegerOptional
Catalogue year, e.g. 2026. The same code in another year is a distinct subject with its own id.
namestringOptional
creditPointsintegerOptional

Credit points (UOC) the subject is worth.

studyLevelstringOptional

e.g. Undergraduate / Postgraduate. A cross-listed subject is one row; use the level it is primarily offered at.

fieldOfEducationstringOptional
facultyNamestringOptional
The owning faculty's name as your system records it. The matching group on our side is resolved separately, so this is a label, not a link.
schoolNamestringOptional
kindstringOptional

Whether this row is a specific subject or an unspecified credit block (a placeholder used to grant credit without naming a subject).

complexitystringOptional

How advanced the subject is. Free text, but use the same vocabulary as the studyLevel recorded on applicants' subjects (introductory, intermediate, advanced), because credit matching compares the two and a mismatch fails to match silently rather than erroring.

descriptionstringOptional
Summary of what the subject covers. Shown in the UI, and intended as input to similarity matching later, so prose is more useful here than keywords.
learningOutcomesstringOptional

What a student can do on completing the subject. Same purpose as description: display now, similarity matching later.

disciplinestringOptional
Discipline code for the subject. Lets a structure group by discipline directly instead of parsing a prefix out of the subject code, which breaks as soon as a code doesn't follow the usual pattern.
availabilitystringOptional
When the subject can be studied. Carried into outcome reporting for international students, who need to know which terms are offered.
conditionsstringOptional
Prerequisites, equivalents, exclusions and anything else that affects whether credit can be granted for this subject. Displayed to whoever is assessing an RPL claim, not evaluated automatically.
externalIdsmap from strings to stringsOptional

Your own identifiers for this subject, keyed by system name, e.g. {"sis": "CRS-1131"}. An id already used for a different subject is rejected.

Response

The subject was created.
idstringOptionalformat: "uuid"
Our stable id for the subject, unchanged by an update.
codestringOptional
yearintegerOptional
statusstringOptional

created | updated.

Errors

400
Bad Request Error
409
Conflict Error