Zum Inhalt springen
Docs
Deutsch
Esc
↑↓navigieren↵öffnen⌘Jvorschau

Create a curriculum

Creates a curriculum with an initial version. Returns the created curriculum with versions[]. Optionally attach modules via moduleIds. Connect curricula to a study program with curriculaIds on POST /study-programs (or PATCH). Use GET /curricula/{id} for full structure. Scoped to your integration’s institution via Basic Auth credentials.

POST/curricula
Authorization
AuthorizationBasic auth · headerrequired

Basic Auth with clientId as username and clientSecret as password

Header parameters
Idempotency-Keystringrequired
Request body
requiredapplication/json
namestringrequired
codestring
initialVersionNamestring
moduleIdsstring[]

Optional module IDs to attach to the initial version.

Responses
201

Curriculum created

dataCurriculaCreateResultrequired

Curriculum returned by POST /curricula: created curriculum with its initial version. Use GET /curricula/{id} for full structure and module items.

Show properties
versionsCurriculaVersion[]required
Show properties
Array of CurriculaVersion
idstringrequired
versionstringrequired
namestringrequired
curriculaIdstringrequired
isDefaultbooleanrequired
isCohortVersionbooleanrequired
sourceCohortIdstring | null
electionModestring | null

When students may elect modules. Null when election is not configured.

Allowed:ELECT_WHENEVERELECT_BEFORE_TERMELECT_AFTER_TERM
electionStartWeeksinteger | null

Weeks before term when election opens.

electionEndWeeksinteger | null

Weeks before term when election closes.

createdAtstring<date-time>required
updatedAtstring<date-time>required
studyProgramConnectedCurriculaobject[]
idstringrequired
namestringrequired
institutionIdstringrequired
createdAtstring<date-time>required
updatedAtstring<date-time>required
isCohortSpecificbooleanrequired
isArchivedboolean | null
codestring | null
metaResponseMetarequired
Show properties
requestIdstringrequired
timestampstring<date-time>required
versionstringrequired
Allowed:v4
400

Bad Request

typestringrequired
Allowed:error
codestringrequired
Allowed:bad_requestunauthorizedforbiddenresource_not_foundconflictvalidation_failedidempotency_key_reusedrate_limit_exceededinternal_error
titlestringrequired
statusintegerrequired
detailstringrequired
instancestring
errorsobject[]
Show properties
Array of object
fieldstring
messagestring
401

Unauthorized

typestringrequired
Allowed:error
codestringrequired
Allowed:bad_requestunauthorizedforbiddenresource_not_foundconflictvalidation_failedidempotency_key_reusedrate_limit_exceededinternal_error
titlestringrequired
statusintegerrequired
detailstringrequired
instancestring
errorsobject[]
Show properties
Array of object
fieldstring
messagestring
409

Conflict

typestringrequired
Allowed:error
codestringrequired
Allowed:bad_requestunauthorizedforbiddenresource_not_foundconflictvalidation_failedidempotency_key_reusedrate_limit_exceededinternal_error
titlestringrequired
statusintegerrequired
detailstringrequired
instancestring
errorsobject[]
Show properties
Array of object
fieldstring
messagestring
429

Too Many Requests

typestringrequired
Allowed:error
codestringrequired
Allowed:bad_requestunauthorizedforbiddenresource_not_foundconflictvalidation_failedidempotency_key_reusedrate_limit_exceededinternal_error
titlestringrequired
statusintegerrequired
detailstringrequired
instancestring
errorsobject[]
Show properties
Array of object
fieldstring
messagestring
500

Internal Server Error

typestringrequired
Allowed:error
codestringrequired
Allowed:bad_requestunauthorizedforbiddenresource_not_foundconflictvalidation_failedidempotency_key_reusedrate_limit_exceededinternal_error
titlestringrequired
statusintegerrequired
detailstringrequired
instancestring
errorsobject[]
Show properties
Array of object
fieldstring
messagestring
Try it
Server
Authorization
Parameters
Bodyapplication/json
Request
curl -X POST 'https://fuxam.app/api/v4/curricula' \
  -H 'Authorization: Basic YOUR_CREDENTIALS' \
  -H 'Idempotency-Key: string' \
  -H 'Content-Type: application/json' \
  -d '{
  "name": "string",
  "code": "string",
  "initialVersionName": "string",
  "moduleIds": [
    "string"
  ]
}'
Response
{
  "data": {
    "id": "cur_001",
    "name": "Bachelor CS 2024",
    "institutionId": "inst_123",
    "createdAt": "2026-01-01T00:00:00.000Z",
    "updatedAt": "2026-06-01T00:00:00.000Z",
    "isCohortSpecific": false,
    "isArchived": false,
    "code": "CS-2024",
    "versions": [
      {
        "id": "cv_001",
        "version": "1.0",
        "name": "Default",
        "createdAt": "2026-01-01T00:00:00.000Z",
        "updatedAt": "2026-06-01T00:00:00.000Z",
        "curriculaId": "cur_001",
        "electionEndWeeks": null,
        "electionMode": null,
        "electionStartWeeks": null,
        "isCohortVersion": false,
        "sourceCohortId": null
      }
    ],
    "studyProgramConnectedCurricula": []
  },
  "meta": {
    "requestId": "req_abc123",
    "timestamp": "2026-06-26T00:00:00.000Z",
    "version": "v4"
  }
}