Colleges & Schools
Permission node: ADMIN.ORGANIZATIONAPI: /api/v1/organization/colleges
A college (or school) is the tier above departments — College of Arts and Sciences, School of Nursing. Degrees are attributed to one, and reporting rolls up through them.
| Action | Endpoint |
|---|---|
| List | GET /organization/colleges |
| Get one | GET /organization/colleges/{collegeID} |
| Its departments | GET /organization/colleges/{collegeID}/departments |
| Its course codes | GET /organization/colleges/{collegeID}/course-codes |
| Create | POST /organization/colleges |
| Update | PUT /organization/colleges/{collegeID} |
| Delete | DELETE /organization/colleges/{collegeID} |
The relationship to departments is through org units
A college does not own a list of departments through a join table, and a department has no college_id. Both carry an org_unit_id into the institutional hierarchy — the org_units tree that runs President → vice-presidents → colleges and offices → departments.
That tree is the authority on who reports to whom. GET /organization/colleges/{collegeID}/departments answers by walking it, not by reading a column. So a department is moved between colleges by moving it in the org hierarchy, not by editing the department record.
This also drives permissions: grants can be scoped to an org subtree, so "the dean of Arts and Sciences sees Arts and Sciences" is expressed by their position in this tree.
Administrators
Appointing someone to lead a college or department is done through unit administrators (/organization/unit-administrators), which replaced the older department-administrator records in July 2026. Appointing or removing one re-derives that person's automatic roles immediately, so access follows the appointment without an extra step.
Before deleting
Degrees reference college_id directly. Deleting a college that degrees point at orphans them. Retire a college by moving its departments and ceasing to attribute new degrees to it.