Skip to content
Docs
English
Esc
↑↓navigate↵open⌘Jpreview

Create a study program

Creates a study program with an initial version. Returns the full program (same shape as GET /study-programs/{id}). Optionally pass curriculaIds to connect curricula. Use hasCohorts and hasStatistics to control cohort-based enrollment and university statistics (both default to true when omitted). Scoped to your integration’s institution via Basic Auth credentials.

POST/study-programs
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
objectivestring
defaultStudyTimeinteger
hasCohortsboolean

Whether the program uses cohorts for enrollment. Defaults to true when omitted.

hasStatisticsboolean

Whether university statistics are collected for this program. Defaults to true when omitted.

curriculaIdsstring[]

Optional curriculum IDs to connect.

Responses
201

Study program created

dataStudyProgramrequired

Study program list, detail, create, and update response. Includes program versions, responsible users, connected curricula, and summary counts. Use GET /study-programs/{id}/cohorts for cohort details.

Show properties
idstringrequired
namestringrequired
institutionIdstringrequired
objectivestring | null
isArchivedbooleanrequired
codestring | null
statisticDataobject | null
defaultStudyTimeinteger
defaultTuitionFeePlanIdstring | null
hasCohortsbooleanrequired
hasStatisticsbooleanrequired
typestring | null
studyProgramVersionStudyProgramVersion[]required

Program versions (cohorts are listed separately).

Show properties
Array of StudyProgramVersion
idstringrequired
namestringrequired
institutionIdstringrequired
studyProgramIdstringrequired
isDefaultbooleanrequired
statisticDataobject | null
responsibleUsersSimpleUser[]required

studyProgramResponsibleUser[].user, sorted by name. The

Show properties
Array of SimpleUser
idstringrequired
namestringrequired
emailstring<email>required
imagestring | nullrequired
connectedCurriculaStudyProgramConnectedCurricula[]required

Flattened curricula from studyProgramConnectedCurricula (see StudyProgramConnectedCurricula). The

Show properties
Array of StudyProgramConnectedCurricula
idstringrequired
namestringrequired
institutionIdstringrequired
createdAtstring<date-time>required
updatedAtstring<date-time>required
isCohortSpecificbooleanrequired
isArchivedbooleanrequired
codestring | null
versionsCountintegerrequired
firstVersionobjectrequired

The first program version.

Show properties
idstringrequired
namestringrequired
institutionIdstringrequired
studyProgramIdstringrequired
isDefaultbooleanrequired
statisticDataobject | null
defaultVersionStudyProgramVersion | null

The default program version, if one is set.

Show properties
One of:
StudyProgramVersion
idstringrequired
namestringrequired
institutionIdstringrequired
studyProgramIdstringrequired
isDefaultbooleanrequired
statisticDataobject | null
null
null
versionsCountintegerrequired

Total number of program versions.

cohortsCountintegerrequired

Total cohort count across all versions.

studyProgramMetadataobject | nullrequired

Always null on list and detail responses; use version-specific endpoints for metadata.

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/study-programs' \
  -H 'Authorization: Basic YOUR_CREDENTIALS' \
  -H 'Idempotency-Key: string' \
  -H 'Content-Type: application/json' \
  -d '{
  "name": "Bachelor Computer Science",
  "code": "BSC-CS",
  "initialVersionName": "1.0",
  "objective": "Train software engineers with strong fundamentals.",
  "defaultStudyTime": 6,
  "hasCohorts": true,
  "hasStatistics": true,
  "curriculaIds": [
    "cur_abc123"
  ]
}'
Response
{
  "data": {
    "id": "sp_abc123",
    "name": "Bachelor of Science",
    "institutionId": "inst_123",
    "objective": "Graduate competent professionals.",
    "isArchived": false,
    "code": "BSC-001",
    "statisticData": null,
    "defaultStudyTime": 6,
    "defaultTuitionFeePlanId": null,
    "hasCohorts": true,
    "hasStatistics": false,
    "type": "BACHELOR",
    "studyProgramVersion": [
      {
        "id": "spv_001",
        "name": "2024 Intake",
        "institutionId": "inst_123",
        "studyProgramId": "sp_abc123",
        "isDefault": true,
        "statisticData": null
      }
    ],
    "responsibleUsers": [
      {
        "id": "user_abc123",
        "name": "Jane Doe",
        "email": "jane@example.com",
        "image": null
      }
    ],
    "connectedCurricula": [
      {
        "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",
        "versionsCount": 2
      }
    ],
    "firstVersion": {
      "id": "spv_001",
      "name": "2024 Intake",
      "institutionId": "inst_123",
      "studyProgramId": "sp_abc123",
      "isDefault": true,
      "statisticData": null
    },
    "defaultVersion": {
      "id": "spv_001",
      "name": "2024 Intake",
      "institutionId": "inst_123",
      "studyProgramId": "sp_abc123",
      "isDefault": true,
      "statisticData": null
    },
    "versionsCount": 1,
    "cohortsCount": 1,
    "studyProgramMetadata": null
  },
  "meta": {
    "requestId": "req_abc123",
    "timestamp": "2026-06-26T00:00:00.000Z",
    "version": "v4"
  }
}