---
search:
  tags:
    - Modules
    - PATCH
seo:
  description: >-
    Partial update of version fields (name, description, version,… Reference for
    the PATCH /modules/{id}/versions/{versionId} endpoint in the Fuxam API v4.
sidebar:
  label: Update a module version
  badge: PATCH
title: Update a module version
type: openapi-operation
---
Partial update of version fields (`name`, `description`, `version`, `status`, `ectsPoints`, `requiredAttendancePercentage`). Use `status` to transition between `DRAFT`, `ACTIVE`, and `ARCHIVED`. Returns summary fields — use GET /modules/&#123;id&#125;/versions/&#123;versionId&#125; for full detail. Scoped to your integration's institution via Basic Auth credentials.

`PATCH /modules/{id}/versions/{versionId}`

**Request body** (`application/json`, required)

- `name` (string)
- `description` (string)
- `version` (string)
- `status` (string)
- `ectsPoints` (number) — ECTS credit points. Halves only (0, 0.5, 1, 1.5, …). Breaking change: previously integer-only.
- `requiredAttendancePercentage` (integer)

Request body example:

```json
{
  "name": "Introduction to Economics (rev. 2)",
  "description": "Updated module description.",
  "version": "2.0",
  "status": "ACTIVE",
  "ectsPoints": 6.5,
  "requiredAttendancePercentage": 80
}
```

**Responses**

- `200` — Updated version
- `400` — Bad Request
- `401` — Unauthorized
- `404` — Not Found
- `429` — Too Many Requests — 1000 requests per minute per institution. Includes \`X-RateLimit-Limit\`, \`X-RateLimit-Remaining\`, \`X-RateLimit-Reset\` (ISO-8601), and \`Retry-After\` (seconds).
- `500` — Internal Server Error

Response example, 200:

```json
{
  "data": {
    "id": "cmqevazu005pb4pi9zp2zthd1",
    "version": "2.0.0",
    "name": "Business Administration Basics",
    "description": "",
    "icon": null,
    "iconType": "emoji",
    "banner": null,
    "createdAt": "2026-06-15T07:04:18.408Z",
    "updatedAt": "2026-06-15T07:04:18.408Z",
    "requiredAttendancePercentage": 80,
    "ectsPoints": 5,
    "courseModuleId": "cmqevazrw05p34pi9wv9w3mks",
    "status": "ACTIVE",
    "timePlanId": "cmqevazr905p14pi9st41ex1w",
    "isDefault": false,
    "earlyAssessmentEnabled": false,
    "isCurrentlyElectable": true,
    "capacity": null,
    "color": null,
    "courseChatFileAttachmentsDefault": true,
    "courseChatReadOnlyDefault": false,
    "courseFeatureDefaults": null,
    "moduleName": null,
    "attemptRules": null
  },
  "meta": {
    "requestId": "req_abc123",
    "timestamp": "2026-06-26T00:00:00.000Z",
    "version": "v4"
  }
}
```
