Update a curriculum
Partial update of curriculum fields (name, code). Optionally pass moduleIds to attach modules to the first version. Returns updated fields with the first version included. Use GET /curricula/{id} for full structure. Scoped to your integration’s institution via Basic Auth credentials.
PATCH
/curricula/{id}Authorization
AuthorizationBasic auth · headerrequiredBasic Auth with clientId as username and clientSecret as password
Path parameters
idstringrequiredRequest body
requiredapplication/jsonnamestringcodestringmoduleIdsstring[]Optional module IDs to attach to the first version.
Responses
200
Updated curriculum
dataCurriculaUpdateResultrequiredCurriculum returned by PATCH /curricula/{id}: updated fields with the first version included.
Show propertiesHide properties
versionsCurriculaVersion[]Show propertiesHide properties
Array of
CurriculaVersionidstringrequiredversionstringrequirednamestringrequiredcurriculaIdstringrequiredisDefaultbooleanrequiredisCohortVersionbooleanrequiredsourceCohortIdstring | nullelectionModestring | nullWhen students may elect modules. Null when election is not configured.
Allowed:
ELECT_WHENEVERELECT_BEFORE_TERMELECT_AFTER_TERMelectionStartWeeksinteger | nullWeeks before term when election opens.
electionEndWeeksinteger | nullWeeks before term when election closes.
createdAtstring<date-time>requiredupdatedAtstring<date-time>requiredidstringrequirednamestringrequiredinstitutionIdstringrequiredcreatedAtstring<date-time>requiredupdatedAtstring<date-time>requiredisCohortSpecificbooleanrequiredisArchivedboolean | nullcodestring | nullmetaResponseMetarequiredShow propertiesHide properties
requestIdstringrequiredtimestampstring<date-time>requiredversionstringrequiredAllowed:
v4400
Bad Request
typestringrequiredAllowed:
errorcodestringrequiredAllowed:
bad_requestunauthorizedforbiddenresource_not_foundconflictvalidation_failedidempotency_key_reusedrate_limit_exceededinternal_errortitlestringrequiredstatusintegerrequireddetailstringrequiredinstancestringerrorsobject[]Show propertiesHide properties
Array of
objectfieldstringmessagestring401
Unauthorized
typestringrequiredAllowed:
errorcodestringrequiredAllowed:
bad_requestunauthorizedforbiddenresource_not_foundconflictvalidation_failedidempotency_key_reusedrate_limit_exceededinternal_errortitlestringrequiredstatusintegerrequireddetailstringrequiredinstancestringerrorsobject[]Show propertiesHide properties
Array of
objectfieldstringmessagestring404
Not Found
typestringrequiredAllowed:
errorcodestringrequiredAllowed:
bad_requestunauthorizedforbiddenresource_not_foundconflictvalidation_failedidempotency_key_reusedrate_limit_exceededinternal_errortitlestringrequiredstatusintegerrequireddetailstringrequiredinstancestringerrorsobject[]Show propertiesHide properties
Array of
objectfieldstringmessagestring429
Too Many Requests
typestringrequiredAllowed:
errorcodestringrequiredAllowed:
bad_requestunauthorizedforbiddenresource_not_foundconflictvalidation_failedidempotency_key_reusedrate_limit_exceededinternal_errortitlestringrequiredstatusintegerrequireddetailstringrequiredinstancestringerrorsobject[]Show propertiesHide properties
Array of
objectfieldstringmessagestring500
Internal Server Error
typestringrequiredAllowed:
errorcodestringrequiredAllowed:
bad_requestunauthorizedforbiddenresource_not_foundconflictvalidation_failedidempotency_key_reusedrate_limit_exceededinternal_errortitlestringrequiredstatusintegerrequireddetailstringrequiredinstancestringerrorsobject[]Show propertiesHide properties
Array of
objectfieldstringmessagestring