Fuxam API v4
Terms, modules, curricula, cohorts, study programs, and continuing education.
https://fuxam.app/api/v4https://dev.fuxam.app/api/v4Terms
Institution-wide academic terms (semesters). Used by curriculum version term mappings and cohort scheduling. Distinct from curriculum version terms under /curricula/.../versions/.../terms. Alias: /terms and /terms/{id} expose the same operations as /organization-terms and /organization-terms/{id}. Idempotency: POST create keys are stored under /organization-terms regardless of which path you call — replays via /terms or /organization-terms return the same cached response.
- GETList organization terms
/organization-terms - POSTCreate an organization term
/organization-terms - GETGet an organization term
/organization-terms/{id} - PATCHUpdate an organization term
/organization-terms/{id} - DELETEDelete an organization term
/organization-terms/{id} - GETList organization terms (alias)
/terms - POSTCreate an organization term (alias)
/terms - GETGet an organization term (alias)
/terms/{id} - PATCHUpdate an organization term (alias)
/terms/{id} - DELETEDelete an organization term (alias)
/terms/{id}
Modules
Course modules and their versions (create, read, update, archive). List responses include summary fields; use GET by ID for full detail.
- GETList modules
/modules - POSTCreate a module
/modules - GETGet a module
/modules/{id} - PATCHUpdate a module
/modules/{id} - DELETEDelete a module
/modules/{id} - PATCHArchive or unarchive a module
/modules/{id}/archive - GETList versions of a module
/modules/{id}/versions - POSTCreate a module version
/modules/{id}/versions - GETGet a module version
/modules/{id}/versions/{versionId} - PATCHUpdate a module version
/modules/{id}/versions/{versionId} - DELETEDelete a module version
/modules/{id}/versions/{versionId} - POSTDuplicate a module version
/modules/{id}/versions/{versionId}/duplicate - GETList Submodules for a Module version
/modules/{id}/versions/{versionId}/submodules - POSTAdd a Submodule to a Module version
/modules/{id}/versions/{versionId}/submodules - DELETERemove a Submodule from a Module version
/modules/{id}/versions/{versionId}/submodules/{connectionId}
Module groups
Groups of module versions. Optional moduleIds on create/update attach modules by resolving each module’s default version.
- GETList module groups
/module-groups - POSTCreate a module group
/module-groups - GETGet a module group
/module-groups/{id} - PATCHUpdate a module group
/module-groups/{id} - DELETEDelete a module group
/module-groups/{id}
Curricula
Curricula and versions: curriculum CRUD, version management, study terms, module slots (items), elective pathways, and parent-child module placement within a version. Optional moduleIds on create/update attach modules to the default version. Elective clusters (elective-clusters) are deferred to a future release (v4.0 out of scope).
- GETList curricula
/curricula - POSTCreate a curriculum
/curricula - GETGet a curriculum
/curricula/{id} - PATCHUpdate a curriculum
/curricula/{id} - DELETEDelete a curriculum
/curricula/{id} - PATCHArchive or unarchive a curriculum
/curricula/{id}/archive - GETList curricula versions
/curricula/{id}/versions - POSTCreate a curricula version
/curricula/{id}/versions - GETGet a curricula version
/curricula/{id}/versions/{versionId} - PATCHUpdate a curricula version
/curricula/{id}/versions/{versionId} - DELETEDelete a curricula version
/curricula/{id}/versions/{versionId} - GETList terms in a curricula version
/curricula/{id}/versions/{versionId}/terms - POSTCreate a term in a curricula version
/curricula/{id}/versions/{versionId}/terms - PATCHUpdate a term in a curricula version
/curricula/{id}/versions/{versionId}/terms/{termId} - DELETEDelete a term from a curricula version
/curricula/{id}/versions/{versionId}/terms/{termId} - GETList pathways in a curricula version
/curricula/{id}/versions/{versionId}/pathways - POSTCreate a pathway in a curricula version
/curricula/{id}/versions/{versionId}/pathways - PATCHUpdate a pathway in a curricula version
/curricula/{id}/versions/{versionId}/pathways/{pathwayId} - DELETEDelete a pathway from a curricula version
/curricula/{id}/versions/{versionId}/pathways/{pathwayId} - GETList curricula version items (module slots)
/curricula/{id}/versions/{versionId}/items - POSTAttach module slot(s) to a curricula version
/curricula/{id}/versions/{versionId}/items - GETGet a curricula version item
/curricula/{id}/versions/{versionId}/items/{itemId} - DELETEDelete a curricula version item
/curricula/{id}/versions/{versionId}/items/{itemId} - PUTSet parent item for a module slot
/curricula/{id}/versions/{versionId}/items/{itemId}/parent - DELETERemove parent from a module slot
/curricula/{id}/versions/{versionId}/items/{itemId}/parent
Cohorts
Top-level cohort collection for study programs and continuing education programs. Filter by studyProgramId or studyProgramVersionId. Manage cohort CRUD and member enrollment.
- GETList cohorts
/cohorts - POSTCreate a cohort
/cohorts - GETGet a cohort
/cohorts/{id} - PATCHUpdate a cohort
/cohorts/{id} - DELETEDelete a cohort
/cohorts/{id} - GETList cohort members
/cohorts/{id}/members - POSTAdd members to a cohort
/cohorts/{id}/members - DELETERemove a member from a cohort
/cohorts/{id}/members/{userId}
Study programs
Study programs (Bachelor, Master, etc.) including versions, connected curricula, and responsible users. Use GET /cohorts?studyProgramId={id} or GET /cohorts?studyProgramVersionId={versionId} for cohorts.
- GETList study programs
/study-programs - POSTCreate a study program
/study-programs - GETGet a study program
/study-programs/{id} - PATCHUpdate a study program
/study-programs/{id} - DELETEDelete a study program
/study-programs/{id} - GETList study program versions
/study-programs/{id}/versions - POSTCreate a study program version
/study-programs/{id}/versions - GETGet a study program version
/study-programs/{id}/versions/{versionId} - PATCHUpdate a study program version
/study-programs/{id}/versions/{versionId} - DELETEDelete a study program version
/study-programs/{id}/versions/{versionId}
Continuing education
Continuing education programs (type=CONTINUING_EDUCATION) — same capabilities as study programs: CRUD, versions, curriculum attachment. Use GET /cohorts?studyProgramId={id} for cohorts.
- GETList continuing education programs
/continuing-education - POSTCreate a continuing education program
/continuing-education - GETGet a continuing education program
/continuing-education/{id} - PATCHUpdate a continuing education program
/continuing-education/{id} - DELETEDelete a continuing education program
/continuing-education/{id} - GETList continuing education program versions
/continuing-education/{id}/versions - POSTCreate a continuing education program version
/continuing-education/{id}/versions - GETGet a continuing education program version
/continuing-education/{id}/versions/{versionId} - PATCHUpdate a continuing education program version
/continuing-education/{id}/versions/{versionId} - DELETEDelete a continuing education program version
/continuing-education/{id}/versions/{versionId}