@easyedu/js-lsm-api 1.124.0 → 1.125.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # @easyedu/js-lsm-api@1.124.0
1
+ # @easyedu/js-lsm-api@1.125.0
2
2
 
3
3
  A TypeScript SDK client for the sbzw93t49b.execute-api.us-east-2.amazonaws.com API.
4
4
 
@@ -206,7 +206,7 @@ All URIs are relative to *https://sbzw93t49b.execute-api.us-east-2.amazonaws.com
206
206
  *CourseApi* | [**postCourseDraft**](docs/CourseApi.md#postcoursedraft) | **POST** /courses/{courseId}/draft | Create or return the single editable course draft
207
207
  *CourseApi* | [**postCourseDraftResourceUpdateAll**](docs/CourseApi.md#postcoursedraftresourceupdateall) | **POST** /courses/{courseId}/draft/resources/update-all | Update all draft resource placements to their latest published versions
208
208
  *CourseApi* | [**postCourseDuplicate**](docs/CourseApi.md#postcourseduplicate) | **POST** /courses/{courseId}/duplicate | Duplicate a course
209
- *CourseApi* | [**postCourseEnrollment**](docs/CourseApi.md#postcourseenrollment) | **POST** /courses/{courseId}/enrollments | Create a new course enrollment
209
+ *CourseApi* | [**postCourseEnrollment**](docs/CourseApi.md#postcourseenrollment) | **POST** /courses/{courseId}/enrollments | Create a new single-role course enrollment
210
210
  *CourseApi* | [**postCourseExport**](docs/CourseApi.md#postcourseexport) | **POST** /courses/{courseId}/exports | Create a new SCORM export for a course
211
211
  *CourseApi* | [**postCourseImageUpload**](docs/CourseApi.md#postcourseimageupload) | **POST** /courses/{courseId}/image | Upload a course image
212
212
  *CourseApi* | [**postCourseItemLearnerSessionsClear**](docs/CourseApi.md#postcourseitemlearnersessionsclear) | **POST** /courses/{courseId}/versions/{courseVersionId}/items/{itemId}/learners/{userId}/sessions/clear | Clear all live sessions for a learner and course item
@@ -217,7 +217,7 @@ All URIs are relative to *https://sbzw93t49b.execute-api.us-east-2.amazonaws.com
217
217
  *CourseApi* | [**postCourseVersionSection**](docs/CourseApi.md#postcourseversionsection) | **POST** /courses/{courseId}/draft/sections | Add a root or nested section to the editable course draft
218
218
  *CourseApi* | [**postCourseVersionSectionDuplicate**](docs/CourseApi.md#postcourseversionsectionduplicate) | **POST** /courses/{courseId}/draft/sections/{sectionId}/duplicate | Recursively duplicate a draft section and reuse its pinned library items
219
219
  *CourseApi* | [**putCourse**](docs/CourseApi.md#putcourse) | **PUT** /courses/{courseId} | Update a course by id
220
- *CourseApi* | [**putCourseEnrollment**](docs/CourseApi.md#putcourseenrollment) | **PUT** /courses/{courseId}/enrollments/{enrollmentId} | Update a course enrollment
220
+ *CourseApi* | [**putCourseEnrollment**](docs/CourseApi.md#putcourseenrollment) | **PUT** /courses/{courseId}/enrollments/{enrollmentId} | Update an enrollment without changing its user type
221
221
  *CourseApi* | [**putCourseItemLearnerAttemptAllowance**](docs/CourseApi.md#putcourseitemlearnerattemptallowance) | **PUT** /courses/{courseId}/versions/{courseVersionId}/items/{itemId}/learners/{userId}/attempt-allowance | Set extra attempts for a learner on a course item
222
222
  *CourseApi* | [**putCourseVersionDraft**](docs/CourseApi.md#putcourseversiondraft) | **PUT** /courses/{courseId}/draft | Update progression settings on the editable course draft
223
223
  *CourseApi* | [**putCourseVersionItem**](docs/CourseApi.md#putcourseversionitem) | **PUT** /courses/{courseId}/draft/sections/{sectionId}/items/{itemId} | Update a draft placement; use the outline move endpoint to change its parent or position
@@ -793,7 +793,7 @@ and is automatically generated by the
793
793
  [OpenAPI Generator](https://openapi-generator.tech) project:
794
794
 
795
795
  - API version: `1.0.0`
796
- - Package version: `1.124.0`
796
+ - Package version: `1.125.0`
797
797
  - Generator version: `7.22.0`
798
798
  - Build package: `org.openapitools.codegen.languages.TypeScriptFetchClientCodegen`
799
799
 
@@ -567,11 +567,11 @@ export declare class CourseApi extends runtime.BaseAPI {
567
567
  */
568
568
  postCourseEnrollmentRequestOpts(requestParameters: PostCourseEnrollmentRequest): Promise<runtime.RequestOpts>;
569
569
  /**
570
- * Create a new course enrollment
570
+ * Create a new single-role course enrollment
571
571
  */
572
572
  postCourseEnrollmentRaw(requestParameters: PostCourseEnrollmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetCourseEnrollment>>;
573
573
  /**
574
- * Create a new course enrollment
574
+ * Create a new single-role course enrollment
575
575
  */
576
576
  postCourseEnrollment(requestParameters: PostCourseEnrollmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetCourseEnrollment>;
577
577
  /**
@@ -703,11 +703,11 @@ export declare class CourseApi extends runtime.BaseAPI {
703
703
  */
704
704
  putCourseEnrollmentRequestOpts(requestParameters: PutCourseEnrollmentRequest): Promise<runtime.RequestOpts>;
705
705
  /**
706
- * Update a course enrollment
706
+ * Update an enrollment without changing its user type
707
707
  */
708
708
  putCourseEnrollmentRaw(requestParameters: PutCourseEnrollmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetCourseEnrollment>>;
709
709
  /**
710
- * Update a course enrollment
710
+ * Update an enrollment without changing its user type
711
711
  */
712
712
  putCourseEnrollment(requestParameters: PutCourseEnrollmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetCourseEnrollment>;
713
713
  /**
@@ -1192,7 +1192,7 @@ class CourseApi extends runtime.BaseAPI {
1192
1192
  });
1193
1193
  }
1194
1194
  /**
1195
- * Create a new course enrollment
1195
+ * Create a new single-role course enrollment
1196
1196
  */
1197
1197
  postCourseEnrollmentRaw(requestParameters, initOverrides) {
1198
1198
  return __awaiter(this, void 0, void 0, function* () {
@@ -1202,7 +1202,7 @@ class CourseApi extends runtime.BaseAPI {
1202
1202
  });
1203
1203
  }
1204
1204
  /**
1205
- * Create a new course enrollment
1205
+ * Create a new single-role course enrollment
1206
1206
  */
1207
1207
  postCourseEnrollment(requestParameters, initOverrides) {
1208
1208
  return __awaiter(this, void 0, void 0, function* () {
@@ -1729,7 +1729,7 @@ class CourseApi extends runtime.BaseAPI {
1729
1729
  });
1730
1730
  }
1731
1731
  /**
1732
- * Update a course enrollment
1732
+ * Update an enrollment without changing its user type
1733
1733
  */
1734
1734
  putCourseEnrollmentRaw(requestParameters, initOverrides) {
1735
1735
  return __awaiter(this, void 0, void 0, function* () {
@@ -1739,7 +1739,7 @@ class CourseApi extends runtime.BaseAPI {
1739
1739
  });
1740
1740
  }
1741
1741
  /**
1742
- * Update a course enrollment
1742
+ * Update an enrollment without changing its user type
1743
1743
  */
1744
1744
  putCourseEnrollment(requestParameters, initOverrides) {
1745
1745
  return __awaiter(this, void 0, void 0, function* () {
@@ -567,11 +567,11 @@ export declare class CourseApi extends runtime.BaseAPI {
567
567
  */
568
568
  postCourseEnrollmentRequestOpts(requestParameters: PostCourseEnrollmentRequest): Promise<runtime.RequestOpts>;
569
569
  /**
570
- * Create a new course enrollment
570
+ * Create a new single-role course enrollment
571
571
  */
572
572
  postCourseEnrollmentRaw(requestParameters: PostCourseEnrollmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetCourseEnrollment>>;
573
573
  /**
574
- * Create a new course enrollment
574
+ * Create a new single-role course enrollment
575
575
  */
576
576
  postCourseEnrollment(requestParameters: PostCourseEnrollmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetCourseEnrollment>;
577
577
  /**
@@ -703,11 +703,11 @@ export declare class CourseApi extends runtime.BaseAPI {
703
703
  */
704
704
  putCourseEnrollmentRequestOpts(requestParameters: PutCourseEnrollmentRequest): Promise<runtime.RequestOpts>;
705
705
  /**
706
- * Update a course enrollment
706
+ * Update an enrollment without changing its user type
707
707
  */
708
708
  putCourseEnrollmentRaw(requestParameters: PutCourseEnrollmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetCourseEnrollment>>;
709
709
  /**
710
- * Update a course enrollment
710
+ * Update an enrollment without changing its user type
711
711
  */
712
712
  putCourseEnrollment(requestParameters: PutCourseEnrollmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetCourseEnrollment>;
713
713
  /**
@@ -1189,7 +1189,7 @@ export class CourseApi extends runtime.BaseAPI {
1189
1189
  });
1190
1190
  }
1191
1191
  /**
1192
- * Create a new course enrollment
1192
+ * Create a new single-role course enrollment
1193
1193
  */
1194
1194
  postCourseEnrollmentRaw(requestParameters, initOverrides) {
1195
1195
  return __awaiter(this, void 0, void 0, function* () {
@@ -1199,7 +1199,7 @@ export class CourseApi extends runtime.BaseAPI {
1199
1199
  });
1200
1200
  }
1201
1201
  /**
1202
- * Create a new course enrollment
1202
+ * Create a new single-role course enrollment
1203
1203
  */
1204
1204
  postCourseEnrollment(requestParameters, initOverrides) {
1205
1205
  return __awaiter(this, void 0, void 0, function* () {
@@ -1726,7 +1726,7 @@ export class CourseApi extends runtime.BaseAPI {
1726
1726
  });
1727
1727
  }
1728
1728
  /**
1729
- * Update a course enrollment
1729
+ * Update an enrollment without changing its user type
1730
1730
  */
1731
1731
  putCourseEnrollmentRaw(requestParameters, initOverrides) {
1732
1732
  return __awaiter(this, void 0, void 0, function* () {
@@ -1736,7 +1736,7 @@ export class CourseApi extends runtime.BaseAPI {
1736
1736
  });
1737
1737
  }
1738
1738
  /**
1739
- * Update a course enrollment
1739
+ * Update an enrollment without changing its user type
1740
1740
  */
1741
1741
  putCourseEnrollment(requestParameters, initOverrides) {
1742
1742
  return __awaiter(this, void 0, void 0, function* () {
@@ -40,15 +40,19 @@ export interface PostCourseEnrollment {
40
40
  */
41
41
  notes?: string | null;
42
42
  /**
43
- * The role/type of the user in this enrollment
43
+ * The role/type of this enrollment. A user may have one current Student and
44
+ * one current Instructor enrollment for the same course. Assign both roles
45
+ * with two requests, one for each user_type.
46
+ *
44
47
  * @type {PostCourseEnrollmentUserTypeEnum}
45
48
  * @memberof PostCourseEnrollment
46
49
  */
47
50
  userType?: PostCourseEnrollmentUserTypeEnum | null;
48
51
  /**
49
- * How to handle a learner with a prior terminal enrollment for this course.
50
- * restart creates a new enrollment period; resume reopens the latest terminal
51
- * enrollment. Active enrollments always conflict.
52
+ * How to handle a user with a prior terminal enrollment of the requested
53
+ * user_type for this course. restart creates a new enrollment period; resume
54
+ * reopens the latest terminal enrollment of that type. A current enrollment
55
+ * of the same type always conflicts.
52
56
  *
53
57
  * @type {PostCourseEnrollmentReEnrollmentModeEnum}
54
58
  * @memberof PostCourseEnrollment
@@ -24,12 +24,6 @@ export interface PutCourseEnrollment {
24
24
  * @memberof PutCourseEnrollment
25
25
  */
26
26
  status?: PutCourseEnrollmentStatusEnum;
27
- /**
28
- * The role/type of the user in this enrollment
29
- * @type {PutCourseEnrollmentUserTypeEnum}
30
- * @memberof PutCourseEnrollment
31
- */
32
- userType?: PutCourseEnrollmentUserTypeEnum;
33
27
  /**
34
28
  * End date of the enrollment (Unix timestamp)
35
29
  * @type {number}
@@ -71,14 +65,6 @@ export declare const PutCourseEnrollmentStatusEnum: {
71
65
  readonly Suspended: "Suspended";
72
66
  };
73
67
  export type PutCourseEnrollmentStatusEnum = typeof PutCourseEnrollmentStatusEnum[keyof typeof PutCourseEnrollmentStatusEnum];
74
- /**
75
- * @export
76
- */
77
- export declare const PutCourseEnrollmentUserTypeEnum: {
78
- readonly Student: "Student";
79
- readonly Instructor: "Instructor";
80
- };
81
- export type PutCourseEnrollmentUserTypeEnum = typeof PutCourseEnrollmentUserTypeEnum[keyof typeof PutCourseEnrollmentUserTypeEnum];
82
68
  /**
83
69
  * Check if a given object implements the PutCourseEnrollment interface.
84
70
  */
@@ -23,13 +23,6 @@ export const PutCourseEnrollmentStatusEnum = {
23
23
  Archived: 'Archived',
24
24
  Suspended: 'Suspended'
25
25
  };
26
- /**
27
- * @export
28
- */
29
- export const PutCourseEnrollmentUserTypeEnum = {
30
- Student: 'Student',
31
- Instructor: 'Instructor'
32
- };
33
26
  /**
34
27
  * Check if a given object implements the PutCourseEnrollment interface.
35
28
  */
@@ -45,7 +38,6 @@ export function PutCourseEnrollmentFromJSONTyped(json, ignoreDiscriminator) {
45
38
  }
46
39
  return {
47
40
  'status': json['status'] == null ? undefined : json['status'],
48
- 'userType': json['user_type'] == null ? undefined : json['user_type'],
49
41
  'enrollmentDateEnd': json['enrollment_date_end'] == null ? undefined : json['enrollment_date_end'],
50
42
  'extensionDays': json['extension_days'] == null ? undefined : json['extension_days'],
51
43
  'notes': json['notes'] == null ? undefined : json['notes'],
@@ -61,7 +53,6 @@ export function PutCourseEnrollmentToJSONTyped(value, ignoreDiscriminator = fals
61
53
  }
62
54
  return {
63
55
  'status': value['status'],
64
- 'user_type': value['userType'],
65
56
  'enrollment_date_end': value['enrollmentDateEnd'],
66
57
  'extension_days': value['extensionDays'],
67
58
  'notes': value['notes'],
@@ -40,15 +40,19 @@ export interface PostCourseEnrollment {
40
40
  */
41
41
  notes?: string | null;
42
42
  /**
43
- * The role/type of the user in this enrollment
43
+ * The role/type of this enrollment. A user may have one current Student and
44
+ * one current Instructor enrollment for the same course. Assign both roles
45
+ * with two requests, one for each user_type.
46
+ *
44
47
  * @type {PostCourseEnrollmentUserTypeEnum}
45
48
  * @memberof PostCourseEnrollment
46
49
  */
47
50
  userType?: PostCourseEnrollmentUserTypeEnum | null;
48
51
  /**
49
- * How to handle a learner with a prior terminal enrollment for this course.
50
- * restart creates a new enrollment period; resume reopens the latest terminal
51
- * enrollment. Active enrollments always conflict.
52
+ * How to handle a user with a prior terminal enrollment of the requested
53
+ * user_type for this course. restart creates a new enrollment period; resume
54
+ * reopens the latest terminal enrollment of that type. A current enrollment
55
+ * of the same type always conflicts.
52
56
  *
53
57
  * @type {PostCourseEnrollmentReEnrollmentModeEnum}
54
58
  * @memberof PostCourseEnrollment
@@ -24,12 +24,6 @@ export interface PutCourseEnrollment {
24
24
  * @memberof PutCourseEnrollment
25
25
  */
26
26
  status?: PutCourseEnrollmentStatusEnum;
27
- /**
28
- * The role/type of the user in this enrollment
29
- * @type {PutCourseEnrollmentUserTypeEnum}
30
- * @memberof PutCourseEnrollment
31
- */
32
- userType?: PutCourseEnrollmentUserTypeEnum;
33
27
  /**
34
28
  * End date of the enrollment (Unix timestamp)
35
29
  * @type {number}
@@ -71,14 +65,6 @@ export declare const PutCourseEnrollmentStatusEnum: {
71
65
  readonly Suspended: "Suspended";
72
66
  };
73
67
  export type PutCourseEnrollmentStatusEnum = typeof PutCourseEnrollmentStatusEnum[keyof typeof PutCourseEnrollmentStatusEnum];
74
- /**
75
- * @export
76
- */
77
- export declare const PutCourseEnrollmentUserTypeEnum: {
78
- readonly Student: "Student";
79
- readonly Instructor: "Instructor";
80
- };
81
- export type PutCourseEnrollmentUserTypeEnum = typeof PutCourseEnrollmentUserTypeEnum[keyof typeof PutCourseEnrollmentUserTypeEnum];
82
68
  /**
83
69
  * Check if a given object implements the PutCourseEnrollment interface.
84
70
  */
@@ -13,7 +13,7 @@
13
13
  * Do not edit the class manually.
14
14
  */
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.PutCourseEnrollmentUserTypeEnum = exports.PutCourseEnrollmentStatusEnum = void 0;
16
+ exports.PutCourseEnrollmentStatusEnum = void 0;
17
17
  exports.instanceOfPutCourseEnrollment = instanceOfPutCourseEnrollment;
18
18
  exports.PutCourseEnrollmentFromJSON = PutCourseEnrollmentFromJSON;
19
19
  exports.PutCourseEnrollmentFromJSONTyped = PutCourseEnrollmentFromJSONTyped;
@@ -31,13 +31,6 @@ exports.PutCourseEnrollmentStatusEnum = {
31
31
  Archived: 'Archived',
32
32
  Suspended: 'Suspended'
33
33
  };
34
- /**
35
- * @export
36
- */
37
- exports.PutCourseEnrollmentUserTypeEnum = {
38
- Student: 'Student',
39
- Instructor: 'Instructor'
40
- };
41
34
  /**
42
35
  * Check if a given object implements the PutCourseEnrollment interface.
43
36
  */
@@ -53,7 +46,6 @@ function PutCourseEnrollmentFromJSONTyped(json, ignoreDiscriminator) {
53
46
  }
54
47
  return {
55
48
  'status': json['status'] == null ? undefined : json['status'],
56
- 'userType': json['user_type'] == null ? undefined : json['user_type'],
57
49
  'enrollmentDateEnd': json['enrollment_date_end'] == null ? undefined : json['enrollment_date_end'],
58
50
  'extensionDays': json['extension_days'] == null ? undefined : json['extension_days'],
59
51
  'notes': json['notes'] == null ? undefined : json['notes'],
@@ -69,7 +61,6 @@ function PutCourseEnrollmentToJSONTyped(value, ignoreDiscriminator = false) {
69
61
  }
70
62
  return {
71
63
  'status': value['status'],
72
- 'user_type': value['userType'],
73
64
  'enrollment_date_end': value['enrollmentDateEnd'],
74
65
  'extension_days': value['extensionDays'],
75
66
  'notes': value['notes'],
package/docs/CourseApi.md CHANGED
@@ -29,7 +29,7 @@ All URIs are relative to *https://sbzw93t49b.execute-api.us-east-2.amazonaws.com
29
29
  | [**postCourseDraft**](CourseApi.md#postcoursedraft) | **POST** /courses/{courseId}/draft | Create or return the single editable course draft |
30
30
  | [**postCourseDraftResourceUpdateAll**](CourseApi.md#postcoursedraftresourceupdateall) | **POST** /courses/{courseId}/draft/resources/update-all | Update all draft resource placements to their latest published versions |
31
31
  | [**postCourseDuplicate**](CourseApi.md#postcourseduplicate) | **POST** /courses/{courseId}/duplicate | Duplicate a course |
32
- | [**postCourseEnrollment**](CourseApi.md#postcourseenrollment) | **POST** /courses/{courseId}/enrollments | Create a new course enrollment |
32
+ | [**postCourseEnrollment**](CourseApi.md#postcourseenrollment) | **POST** /courses/{courseId}/enrollments | Create a new single-role course enrollment |
33
33
  | [**postCourseExport**](CourseApi.md#postcourseexport) | **POST** /courses/{courseId}/exports | Create a new SCORM export for a course |
34
34
  | [**postCourseImageUpload**](CourseApi.md#postcourseimageupload) | **POST** /courses/{courseId}/image | Upload a course image |
35
35
  | [**postCourseItemLearnerSessionsClear**](CourseApi.md#postcourseitemlearnersessionsclear) | **POST** /courses/{courseId}/versions/{courseVersionId}/items/{itemId}/learners/{userId}/sessions/clear | Clear all live sessions for a learner and course item |
@@ -40,7 +40,7 @@ All URIs are relative to *https://sbzw93t49b.execute-api.us-east-2.amazonaws.com
40
40
  | [**postCourseVersionSection**](CourseApi.md#postcourseversionsection) | **POST** /courses/{courseId}/draft/sections | Add a root or nested section to the editable course draft |
41
41
  | [**postCourseVersionSectionDuplicate**](CourseApi.md#postcourseversionsectionduplicate) | **POST** /courses/{courseId}/draft/sections/{sectionId}/duplicate | Recursively duplicate a draft section and reuse its pinned library items |
42
42
  | [**putCourse**](CourseApi.md#putcourse) | **PUT** /courses/{courseId} | Update a course by id |
43
- | [**putCourseEnrollment**](CourseApi.md#putcourseenrollment) | **PUT** /courses/{courseId}/enrollments/{enrollmentId} | Update a course enrollment |
43
+ | [**putCourseEnrollment**](CourseApi.md#putcourseenrollment) | **PUT** /courses/{courseId}/enrollments/{enrollmentId} | Update an enrollment without changing its user type |
44
44
  | [**putCourseItemLearnerAttemptAllowance**](CourseApi.md#putcourseitemlearnerattemptallowance) | **PUT** /courses/{courseId}/versions/{courseVersionId}/items/{itemId}/learners/{userId}/attempt-allowance | Set extra attempts for a learner on a course item |
45
45
  | [**putCourseVersionDraft**](CourseApi.md#putcourseversiondraft) | **PUT** /courses/{courseId}/draft | Update progression settings on the editable course draft |
46
46
  | [**putCourseVersionItem**](CourseApi.md#putcourseversionitem) | **PUT** /courses/{courseId}/draft/sections/{sectionId}/items/{itemId} | Update a draft placement; use the outline move endpoint to change its parent or position |
@@ -1823,7 +1823,7 @@ No authorization required
1823
1823
 
1824
1824
  > GetCourseEnrollment postCourseEnrollment(courseId, postCourseEnrollment)
1825
1825
 
1826
- Create a new course enrollment
1826
+ Create a new single-role course enrollment
1827
1827
 
1828
1828
  ### Example
1829
1829
 
@@ -1882,7 +1882,9 @@ No authorization required
1882
1882
  ### HTTP response details
1883
1883
  | Status code | Description | Response headers |
1884
1884
  |-------------|-------------|------------------|
1885
- | **200** | post course enrollment response OK | - |
1885
+ | **200** | A prior terminal enrollment of the requested type was resumed | - |
1886
+ | **201** | A new enrollment of the requested type was created | - |
1887
+ | **409** | A current enrollment of the requested type already exists, or an enrollment limit was reached | - |
1886
1888
 
1887
1889
  [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
1888
1890
 
@@ -2613,7 +2615,7 @@ No authorization required
2613
2615
 
2614
2616
  > GetCourseEnrollment putCourseEnrollment(courseId, enrollmentId, putCourseEnrollment)
2615
2617
 
2616
- Update a course enrollment
2618
+ Update an enrollment without changing its user type
2617
2619
 
2618
2620
  ### Example
2619
2621
 
@@ -7,7 +7,6 @@
7
7
  Name | Type
8
8
  ------------ | -------------
9
9
  `status` | string
10
- `userType` | string
11
10
  `enrollmentDateEnd` | number
12
11
  `extensionDays` | number
13
12
  `notes` | string
@@ -21,7 +20,6 @@ import type { PutCourseEnrollment } from '@easyedu/js-lsm-api'
21
20
  // TODO: Update the object below with actual values
22
21
  const example = {
23
22
  "status": null,
24
- "userType": null,
25
23
  "enrollmentDateEnd": null,
26
24
  "extensionDays": null,
27
25
  "notes": null,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@easyedu/js-lsm-api",
3
- "version": "1.124.0",
3
+ "version": "1.125.0",
4
4
  "description": "OpenAPI client for @easyedu/js-lsm-api",
5
5
  "author": "OpenAPI-Generator",
6
6
  "repository": {
@@ -1833,7 +1833,7 @@ export class CourseApi extends runtime.BaseAPI {
1833
1833
  }
1834
1834
 
1835
1835
  /**
1836
- * Create a new course enrollment
1836
+ * Create a new single-role course enrollment
1837
1837
  */
1838
1838
  async postCourseEnrollmentRaw(requestParameters: PostCourseEnrollmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetCourseEnrollment>> {
1839
1839
  const requestOptions = await this.postCourseEnrollmentRequestOpts(requestParameters);
@@ -1843,7 +1843,7 @@ export class CourseApi extends runtime.BaseAPI {
1843
1843
  }
1844
1844
 
1845
1845
  /**
1846
- * Create a new course enrollment
1846
+ * Create a new single-role course enrollment
1847
1847
  */
1848
1848
  async postCourseEnrollment(requestParameters: PostCourseEnrollmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetCourseEnrollment> {
1849
1849
  const response = await this.postCourseEnrollmentRaw(requestParameters, initOverrides);
@@ -2512,7 +2512,7 @@ export class CourseApi extends runtime.BaseAPI {
2512
2512
  }
2513
2513
 
2514
2514
  /**
2515
- * Update a course enrollment
2515
+ * Update an enrollment without changing its user type
2516
2516
  */
2517
2517
  async putCourseEnrollmentRaw(requestParameters: PutCourseEnrollmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetCourseEnrollment>> {
2518
2518
  const requestOptions = await this.putCourseEnrollmentRequestOpts(requestParameters);
@@ -2522,7 +2522,7 @@ export class CourseApi extends runtime.BaseAPI {
2522
2522
  }
2523
2523
 
2524
2524
  /**
2525
- * Update a course enrollment
2525
+ * Update an enrollment without changing its user type
2526
2526
  */
2527
2527
  async putCourseEnrollment(requestParameters: PutCourseEnrollmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetCourseEnrollment> {
2528
2528
  const response = await this.putCourseEnrollmentRaw(requestParameters, initOverrides);
@@ -44,15 +44,19 @@ export interface PostCourseEnrollment {
44
44
  */
45
45
  notes?: string | null;
46
46
  /**
47
- * The role/type of the user in this enrollment
47
+ * The role/type of this enrollment. A user may have one current Student and
48
+ * one current Instructor enrollment for the same course. Assign both roles
49
+ * with two requests, one for each user_type.
50
+ *
48
51
  * @type {PostCourseEnrollmentUserTypeEnum}
49
52
  * @memberof PostCourseEnrollment
50
53
  */
51
54
  userType?: PostCourseEnrollmentUserTypeEnum | null;
52
55
  /**
53
- * How to handle a learner with a prior terminal enrollment for this course.
54
- * restart creates a new enrollment period; resume reopens the latest terminal
55
- * enrollment. Active enrollments always conflict.
56
+ * How to handle a user with a prior terminal enrollment of the requested
57
+ * user_type for this course. restart creates a new enrollment period; resume
58
+ * reopens the latest terminal enrollment of that type. A current enrollment
59
+ * of the same type always conflicts.
56
60
  *
57
61
  * @type {PostCourseEnrollmentReEnrollmentModeEnum}
58
62
  * @memberof PostCourseEnrollment
@@ -28,12 +28,6 @@ export interface PutCourseEnrollment {
28
28
  * @memberof PutCourseEnrollment
29
29
  */
30
30
  status?: PutCourseEnrollmentStatusEnum;
31
- /**
32
- * The role/type of the user in this enrollment
33
- * @type {PutCourseEnrollmentUserTypeEnum}
34
- * @memberof PutCourseEnrollment
35
- */
36
- userType?: PutCourseEnrollmentUserTypeEnum;
37
31
  /**
38
32
  * End date of the enrollment (Unix timestamp)
39
33
  * @type {number}
@@ -78,15 +72,6 @@ export const PutCourseEnrollmentStatusEnum = {
78
72
  } as const;
79
73
  export type PutCourseEnrollmentStatusEnum = typeof PutCourseEnrollmentStatusEnum[keyof typeof PutCourseEnrollmentStatusEnum];
80
74
 
81
- /**
82
- * @export
83
- */
84
- export const PutCourseEnrollmentUserTypeEnum = {
85
- Student: 'Student',
86
- Instructor: 'Instructor'
87
- } as const;
88
- export type PutCourseEnrollmentUserTypeEnum = typeof PutCourseEnrollmentUserTypeEnum[keyof typeof PutCourseEnrollmentUserTypeEnum];
89
-
90
75
 
91
76
  /**
92
77
  * Check if a given object implements the PutCourseEnrollment interface.
@@ -106,7 +91,6 @@ export function PutCourseEnrollmentFromJSONTyped(json: any, ignoreDiscriminator:
106
91
  return {
107
92
 
108
93
  'status': json['status'] == null ? undefined : json['status'],
109
- 'userType': json['user_type'] == null ? undefined : json['user_type'],
110
94
  'enrollmentDateEnd': json['enrollment_date_end'] == null ? undefined : json['enrollment_date_end'],
111
95
  'extensionDays': json['extension_days'] == null ? undefined : json['extension_days'],
112
96
  'notes': json['notes'] == null ? undefined : json['notes'],
@@ -126,7 +110,6 @@ export function PutCourseEnrollmentToJSONTyped(value?: PutCourseEnrollment | nul
126
110
  return {
127
111
 
128
112
  'status': value['status'],
129
- 'user_type': value['userType'],
130
113
  'enrollment_date_end': value['enrollmentDateEnd'],
131
114
  'extension_days': value['extensionDays'],
132
115
  'notes': value['notes'],