@easyedu/js-lsm-api 1.132.0 → 1.134.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/.openapi-generator/FILES +6 -0
- package/README.md +8 -3
- package/dist/apis/IntegrationApi.d.ts +7 -3
- package/dist/apis/IntegrationApi.js +10 -5
- package/dist/apis/PortalApi.d.ts +30 -0
- package/dist/apis/PortalApi.js +63 -1
- package/dist/apis/QuestionApi.d.ts +19 -0
- package/dist/apis/QuestionApi.js +44 -0
- package/dist/esm/apis/IntegrationApi.d.ts +7 -3
- package/dist/esm/apis/IntegrationApi.js +10 -5
- package/dist/esm/apis/PortalApi.d.ts +30 -0
- package/dist/esm/apis/PortalApi.js +62 -0
- package/dist/esm/apis/QuestionApi.d.ts +19 -0
- package/dist/esm/apis/QuestionApi.js +44 -0
- package/dist/esm/models/GetCourse.d.ts +6 -0
- package/dist/esm/models/GetCourse.js +4 -0
- package/dist/esm/models/GetCourseEnrollmentListItem.d.ts +6 -0
- package/dist/esm/models/GetCourseEnrollmentListItem.js +2 -0
- package/dist/esm/models/GetPortalUser.d.ts +6 -0
- package/dist/esm/models/GetPortalUser.js +4 -0
- package/dist/esm/models/GetResource.d.ts +6 -0
- package/dist/esm/models/GetResource.js +4 -0
- package/dist/esm/models/GetResourceUsageCoursesInner.d.ts +6 -0
- package/dist/esm/models/GetResourceUsageCoursesInner.js +4 -0
- package/dist/esm/models/IntegrationEventCourse.d.ts +6 -0
- package/dist/esm/models/IntegrationEventCourse.js +2 -0
- package/dist/esm/models/IntegrationEventLearner.d.ts +6 -0
- package/dist/esm/models/IntegrationEventLearner.js +2 -0
- package/dist/esm/models/IntegrationEventUser.d.ts +6 -0
- package/dist/esm/models/IntegrationEventUser.js +2 -0
- package/dist/esm/models/PostCourse.d.ts +6 -0
- package/dist/esm/models/PostCourse.js +2 -0
- package/dist/esm/models/PostPortalInvite.d.ts +6 -0
- package/dist/esm/models/PostPortalInvite.js +2 -0
- package/dist/esm/models/PostQuestionTags.d.ts +38 -0
- package/dist/esm/models/PostQuestionTags.js +47 -0
- package/dist/esm/models/PostQuestionTagsResponse.d.ts +32 -0
- package/dist/esm/models/PostQuestionTagsResponse.js +43 -0
- package/dist/esm/models/PostResource.d.ts +6 -0
- package/dist/esm/models/PostResource.js +2 -0
- package/dist/esm/models/PostRichTextAssetUpload.d.ts +6 -0
- package/dist/esm/models/PostRichTextAssetUpload.js +2 -0
- package/dist/esm/models/PostZapierEnrollment.d.ts +16 -4
- package/dist/esm/models/PostZapierEnrollment.js +6 -6
- package/dist/esm/models/PostZapierShopifyCourseMapping.d.ts +8 -2
- package/dist/esm/models/PostZapierShopifyCourseMapping.js +3 -3
- package/dist/esm/models/PostZapierUser.d.ts +6 -0
- package/dist/esm/models/PostZapierUser.js +2 -0
- package/dist/esm/models/PutCourse.d.ts +6 -0
- package/dist/esm/models/PutCourse.js +2 -0
- package/dist/esm/models/PutPortalUser.d.ts +32 -0
- package/dist/esm/models/PutPortalUser.js +41 -0
- package/dist/esm/models/PutResource.d.ts +6 -0
- package/dist/esm/models/PutResource.js +2 -0
- package/dist/esm/models/RichTextAsset.d.ts +6 -0
- package/dist/esm/models/RichTextAsset.js +2 -0
- package/dist/esm/models/ZapierCourse.d.ts +6 -0
- package/dist/esm/models/ZapierCourse.js +4 -0
- package/dist/esm/models/ZapierEnrollment.d.ts +12 -0
- package/dist/esm/models/ZapierEnrollment.js +8 -0
- package/dist/esm/models/ZapierUser.d.ts +6 -0
- package/dist/esm/models/ZapierUser.js +4 -0
- package/dist/esm/models/index.d.ts +3 -0
- package/dist/esm/models/index.js +3 -0
- package/dist/models/GetCourse.d.ts +6 -0
- package/dist/models/GetCourse.js +4 -0
- package/dist/models/GetCourseEnrollmentListItem.d.ts +6 -0
- package/dist/models/GetCourseEnrollmentListItem.js +2 -0
- package/dist/models/GetPortalUser.d.ts +6 -0
- package/dist/models/GetPortalUser.js +4 -0
- package/dist/models/GetResource.d.ts +6 -0
- package/dist/models/GetResource.js +4 -0
- package/dist/models/GetResourceUsageCoursesInner.d.ts +6 -0
- package/dist/models/GetResourceUsageCoursesInner.js +4 -0
- package/dist/models/IntegrationEventCourse.d.ts +6 -0
- package/dist/models/IntegrationEventCourse.js +2 -0
- package/dist/models/IntegrationEventLearner.d.ts +6 -0
- package/dist/models/IntegrationEventLearner.js +2 -0
- package/dist/models/IntegrationEventUser.d.ts +6 -0
- package/dist/models/IntegrationEventUser.js +2 -0
- package/dist/models/PostCourse.d.ts +6 -0
- package/dist/models/PostCourse.js +2 -0
- package/dist/models/PostPortalInvite.d.ts +6 -0
- package/dist/models/PostPortalInvite.js +2 -0
- package/dist/models/PostQuestionTags.d.ts +38 -0
- package/dist/models/PostQuestionTags.js +54 -0
- package/dist/models/PostQuestionTagsResponse.d.ts +32 -0
- package/dist/models/PostQuestionTagsResponse.js +50 -0
- package/dist/models/PostResource.d.ts +6 -0
- package/dist/models/PostResource.js +2 -0
- package/dist/models/PostRichTextAssetUpload.d.ts +6 -0
- package/dist/models/PostRichTextAssetUpload.js +2 -0
- package/dist/models/PostZapierEnrollment.d.ts +16 -4
- package/dist/models/PostZapierEnrollment.js +6 -6
- package/dist/models/PostZapierShopifyCourseMapping.d.ts +8 -2
- package/dist/models/PostZapierShopifyCourseMapping.js +3 -3
- package/dist/models/PostZapierUser.d.ts +6 -0
- package/dist/models/PostZapierUser.js +2 -0
- package/dist/models/PutCourse.d.ts +6 -0
- package/dist/models/PutCourse.js +2 -0
- package/dist/models/PutPortalUser.d.ts +32 -0
- package/dist/models/PutPortalUser.js +48 -0
- package/dist/models/PutResource.d.ts +6 -0
- package/dist/models/PutResource.js +2 -0
- package/dist/models/RichTextAsset.d.ts +6 -0
- package/dist/models/RichTextAsset.js +2 -0
- package/dist/models/ZapierCourse.d.ts +6 -0
- package/dist/models/ZapierCourse.js +4 -0
- package/dist/models/ZapierEnrollment.d.ts +12 -0
- package/dist/models/ZapierEnrollment.js +8 -0
- package/dist/models/ZapierUser.d.ts +6 -0
- package/dist/models/ZapierUser.js +4 -0
- package/dist/models/index.d.ts +3 -0
- package/dist/models/index.js +3 -0
- package/docs/GetCourse.md +2 -0
- package/docs/GetCourseEnrollmentListItem.md +2 -0
- package/docs/GetPortalUser.md +2 -0
- package/docs/GetResource.md +2 -0
- package/docs/GetResourceUsageCoursesInner.md +2 -0
- package/docs/IntegrationApi.md +15 -6
- package/docs/IntegrationEventCourse.md +2 -0
- package/docs/IntegrationEventLearner.md +2 -0
- package/docs/IntegrationEventUser.md +2 -0
- package/docs/PortalApi.md +82 -1
- package/docs/PostCourse.md +2 -0
- package/docs/PostPortalInvite.md +2 -0
- package/docs/PostQuestionTags.md +37 -0
- package/docs/PostQuestionTagsResponse.md +34 -0
- package/docs/PostResource.md +2 -0
- package/docs/PostRichTextAssetUpload.md +2 -0
- package/docs/PostZapierEnrollment.md +4 -0
- package/docs/PostZapierShopifyCourseMapping.md +2 -0
- package/docs/PostZapierUser.md +2 -0
- package/docs/PutCourse.md +2 -0
- package/docs/PutPortalUser.md +35 -0
- package/docs/PutResource.md +2 -0
- package/docs/QuestionApi.md +71 -0
- package/docs/RichTextAsset.md +2 -0
- package/docs/ZapierCourse.md +2 -0
- package/docs/ZapierEnrollment.md +4 -0
- package/docs/ZapierUser.md +2 -0
- package/package.json +1 -1
- package/src/apis/IntegrationApi.ts +15 -10
- package/src/apis/PortalApi.ts +94 -0
- package/src/apis/QuestionApi.ts +63 -0
- package/src/models/GetCourse.ts +9 -0
- package/src/models/GetCourseEnrollmentListItem.ts +8 -0
- package/src/models/GetPortalUser.ts +9 -0
- package/src/models/GetResource.ts +9 -0
- package/src/models/GetResourceUsageCoursesInner.ts +9 -0
- package/src/models/IntegrationEventCourse.ts +8 -0
- package/src/models/IntegrationEventLearner.ts +8 -0
- package/src/models/IntegrationEventUser.ts +8 -0
- package/src/models/PostCourse.ts +8 -0
- package/src/models/PostPortalInvite.ts +8 -0
- package/src/models/PostQuestionTags.ts +75 -0
- package/src/models/PostQuestionTagsResponse.ts +66 -0
- package/src/models/PostResource.ts +8 -0
- package/src/models/PostRichTextAssetUpload.ts +8 -0
- package/src/models/PostZapierEnrollment.ts +22 -8
- package/src/models/PostZapierShopifyCourseMapping.ts +11 -4
- package/src/models/PostZapierUser.ts +8 -0
- package/src/models/PutCourse.ts +8 -0
- package/src/models/PutPortalUser.ts +65 -0
- package/src/models/PutResource.ts +8 -0
- package/src/models/RichTextAsset.ts +8 -0
- package/src/models/ZapierCourse.ts +9 -0
- package/src/models/ZapierEnrollment.ts +18 -0
- package/src/models/ZapierUser.ts +9 -0
- package/src/models/index.ts +3 -0
package/src/apis/QuestionApi.ts
CHANGED
|
@@ -28,6 +28,16 @@ import {
|
|
|
28
28
|
PostQuestionFromJSON,
|
|
29
29
|
PostQuestionToJSON,
|
|
30
30
|
} from '../models/PostQuestion';
|
|
31
|
+
import {
|
|
32
|
+
type PostQuestionTags,
|
|
33
|
+
PostQuestionTagsFromJSON,
|
|
34
|
+
PostQuestionTagsToJSON,
|
|
35
|
+
} from '../models/PostQuestionTags';
|
|
36
|
+
import {
|
|
37
|
+
type PostQuestionTagsResponse,
|
|
38
|
+
PostQuestionTagsResponseFromJSON,
|
|
39
|
+
PostQuestionTagsResponseToJSON,
|
|
40
|
+
} from '../models/PostQuestionTagsResponse';
|
|
31
41
|
import {
|
|
32
42
|
type PutQuestion,
|
|
33
43
|
PutQuestionFromJSON,
|
|
@@ -58,6 +68,10 @@ export interface PostQuestionRequest {
|
|
|
58
68
|
postQuestion: PostQuestion;
|
|
59
69
|
}
|
|
60
70
|
|
|
71
|
+
export interface PostQuestionTagsRequest {
|
|
72
|
+
postQuestionTags: PostQuestionTags;
|
|
73
|
+
}
|
|
74
|
+
|
|
61
75
|
export interface PutQuestionRequest {
|
|
62
76
|
questionId: string;
|
|
63
77
|
putQuestion: PutQuestion;
|
|
@@ -306,6 +320,55 @@ export class QuestionApi extends runtime.BaseAPI {
|
|
|
306
320
|
return await response.value();
|
|
307
321
|
}
|
|
308
322
|
|
|
323
|
+
/**
|
|
324
|
+
* Creates request options for postQuestionTags without sending the request
|
|
325
|
+
*/
|
|
326
|
+
async postQuestionTagsRequestOpts(requestParameters: PostQuestionTagsRequest): Promise<runtime.RequestOpts> {
|
|
327
|
+
if (requestParameters['postQuestionTags'] == null) {
|
|
328
|
+
throw new runtime.RequiredError(
|
|
329
|
+
'postQuestionTags',
|
|
330
|
+
'Required parameter "postQuestionTags" was null or undefined when calling postQuestionTags().'
|
|
331
|
+
);
|
|
332
|
+
}
|
|
333
|
+
|
|
334
|
+
const queryParameters: any = {};
|
|
335
|
+
|
|
336
|
+
const headerParameters: runtime.HTTPHeaders = {};
|
|
337
|
+
|
|
338
|
+
headerParameters['Content-Type'] = 'application/json';
|
|
339
|
+
|
|
340
|
+
|
|
341
|
+
let urlPath = `/questions/tags`;
|
|
342
|
+
|
|
343
|
+
return {
|
|
344
|
+
path: urlPath,
|
|
345
|
+
method: 'POST',
|
|
346
|
+
headers: headerParameters,
|
|
347
|
+
query: queryParameters,
|
|
348
|
+
body: PostQuestionTagsToJSON(requestParameters['postQuestionTags']),
|
|
349
|
+
};
|
|
350
|
+
}
|
|
351
|
+
|
|
352
|
+
/**
|
|
353
|
+
* Adds the given tags to every listed question, keeping existing tags. Tags are metadata, so no new question versions are created.
|
|
354
|
+
* Add tags to several questions
|
|
355
|
+
*/
|
|
356
|
+
async postQuestionTagsRaw(requestParameters: PostQuestionTagsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PostQuestionTagsResponse>> {
|
|
357
|
+
const requestOptions = await this.postQuestionTagsRequestOpts(requestParameters);
|
|
358
|
+
const response = await this.request(requestOptions, initOverrides);
|
|
359
|
+
|
|
360
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => PostQuestionTagsResponseFromJSON(jsonValue));
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
/**
|
|
364
|
+
* Adds the given tags to every listed question, keeping existing tags. Tags are metadata, so no new question versions are created.
|
|
365
|
+
* Add tags to several questions
|
|
366
|
+
*/
|
|
367
|
+
async postQuestionTags(requestParameters: PostQuestionTagsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PostQuestionTagsResponse> {
|
|
368
|
+
const response = await this.postQuestionTagsRaw(requestParameters, initOverrides);
|
|
369
|
+
return await response.value();
|
|
370
|
+
}
|
|
371
|
+
|
|
309
372
|
/**
|
|
310
373
|
* Creates request options for putQuestion without sending the request
|
|
311
374
|
*/
|
package/src/models/GetCourse.ts
CHANGED
|
@@ -87,6 +87,12 @@ export interface GetCourse {
|
|
|
87
87
|
* @memberof GetCourse
|
|
88
88
|
*/
|
|
89
89
|
tags: Array<ContentLibraryTag>;
|
|
90
|
+
/**
|
|
91
|
+
* Your own identifier for this course, unique within the portal. Integrations such as Zapier can use it in place of id.
|
|
92
|
+
* @type {string}
|
|
93
|
+
* @memberof GetCourse
|
|
94
|
+
*/
|
|
95
|
+
customerRef: string | null;
|
|
90
96
|
}
|
|
91
97
|
|
|
92
98
|
|
|
@@ -115,6 +121,7 @@ export function instanceOfGetCourse(value: object): value is GetCourse {
|
|
|
115
121
|
if (!('accessDurationDays' in value) || value['accessDurationDays'] === undefined) return false;
|
|
116
122
|
if (!('accessFixedEndAt' in value) || value['accessFixedEndAt'] === undefined) return false;
|
|
117
123
|
if (!('tags' in value) || value['tags'] === undefined) return false;
|
|
124
|
+
if (!('customerRef' in value) || value['customerRef'] === undefined) return false;
|
|
118
125
|
return true;
|
|
119
126
|
}
|
|
120
127
|
|
|
@@ -138,6 +145,7 @@ export function GetCourseFromJSONTyped(json: any, ignoreDiscriminator: boolean):
|
|
|
138
145
|
'accessDurationDays': json['access_duration_days'],
|
|
139
146
|
'accessFixedEndAt': json['access_fixed_end_at'],
|
|
140
147
|
'tags': ((json['tags'] as Array<any>).map(ContentLibraryTagFromJSON)),
|
|
148
|
+
'customerRef': json['customer_ref'],
|
|
141
149
|
};
|
|
142
150
|
}
|
|
143
151
|
|
|
@@ -161,6 +169,7 @@ export function GetCourseToJSONTyped(value?: Omit<GetCourse, 'id'> | null, ignor
|
|
|
161
169
|
'access_duration_days': value['accessDurationDays'],
|
|
162
170
|
'access_fixed_end_at': value['accessFixedEndAt'],
|
|
163
171
|
'tags': ((value['tags'] as Array<any>).map(ContentLibraryTagToJSON)),
|
|
172
|
+
'customer_ref': value['customerRef'],
|
|
164
173
|
};
|
|
165
174
|
}
|
|
166
175
|
|
|
@@ -61,6 +61,12 @@ export interface GetCourseEnrollmentListItem {
|
|
|
61
61
|
* @memberof GetCourseEnrollmentListItem
|
|
62
62
|
*/
|
|
63
63
|
lastName: string;
|
|
64
|
+
/**
|
|
65
|
+
* Contact email of the enrolled user. Only populated for Instructor enrollments so learners can contact course instructors; null for Student enrollments.
|
|
66
|
+
* @type {string}
|
|
67
|
+
* @memberof GetCourseEnrollmentListItem
|
|
68
|
+
*/
|
|
69
|
+
email?: string | null;
|
|
64
70
|
/**
|
|
65
71
|
* Start date of the enrollment (Unix timestamp)
|
|
66
72
|
* @type {number}
|
|
@@ -185,6 +191,7 @@ export function GetCourseEnrollmentListItemFromJSONTyped(json: any, ignoreDiscri
|
|
|
185
191
|
'courseVersionNumber': json['course_version_number'],
|
|
186
192
|
'firstName': json['first_name'],
|
|
187
193
|
'lastName': json['last_name'],
|
|
194
|
+
'email': json['email'] == null ? undefined : json['email'],
|
|
188
195
|
'enrollmentDateStart': json['enrollment_date_start'],
|
|
189
196
|
'enrollmentDateEnd': json['enrollment_date_end'],
|
|
190
197
|
'status': json['status'],
|
|
@@ -213,6 +220,7 @@ export function GetCourseEnrollmentListItemToJSONTyped(value?: GetCourseEnrollme
|
|
|
213
220
|
'course_version_number': value['courseVersionNumber'],
|
|
214
221
|
'first_name': value['firstName'],
|
|
215
222
|
'last_name': value['lastName'],
|
|
223
|
+
'email': value['email'],
|
|
216
224
|
'enrollment_date_start': value['enrollmentDateStart'],
|
|
217
225
|
'enrollment_date_end': value['enrollmentDateEnd'],
|
|
218
226
|
'status': value['status'],
|
|
@@ -69,6 +69,12 @@ export interface GetPortalUser {
|
|
|
69
69
|
* @memberof GetPortalUser
|
|
70
70
|
*/
|
|
71
71
|
invitation?: GetPortalInvitationSummary | null;
|
|
72
|
+
/**
|
|
73
|
+
* Your own identifier for this user in this portal, unique within the portal. Integrations such as Zapier can use it in place of the user id.
|
|
74
|
+
* @type {string}
|
|
75
|
+
* @memberof GetPortalUser
|
|
76
|
+
*/
|
|
77
|
+
customerRef: string | null;
|
|
72
78
|
}
|
|
73
79
|
|
|
74
80
|
/**
|
|
@@ -81,6 +87,7 @@ export function instanceOfGetPortalUser(value: object): value is GetPortalUser {
|
|
|
81
87
|
if (!('lastName' in value) || value['lastName'] === undefined) return false;
|
|
82
88
|
if (!('role' in value) || value['role'] === undefined) return false;
|
|
83
89
|
if (!('isActive' in value) || value['isActive'] === undefined) return false;
|
|
90
|
+
if (!('customerRef' in value) || value['customerRef'] === undefined) return false;
|
|
84
91
|
return true;
|
|
85
92
|
}
|
|
86
93
|
|
|
@@ -101,6 +108,7 @@ export function GetPortalUserFromJSONTyped(json: any, ignoreDiscriminator: boole
|
|
|
101
108
|
'role': json['role'],
|
|
102
109
|
'isActive': json['is_active'],
|
|
103
110
|
'invitation': json['invitation'] == null ? undefined : GetPortalInvitationSummaryFromJSON(json['invitation']),
|
|
111
|
+
'customerRef': json['customer_ref'],
|
|
104
112
|
};
|
|
105
113
|
}
|
|
106
114
|
|
|
@@ -122,6 +130,7 @@ export function GetPortalUserToJSONTyped(value?: GetPortalUser | null, ignoreDis
|
|
|
122
130
|
'role': value['role'],
|
|
123
131
|
'is_active': value['isActive'],
|
|
124
132
|
'invitation': GetPortalInvitationSummaryToJSON(value['invitation']),
|
|
133
|
+
'customer_ref': value['customerRef'],
|
|
125
134
|
};
|
|
126
135
|
}
|
|
127
136
|
|
|
@@ -137,6 +137,12 @@ export interface GetResource {
|
|
|
137
137
|
* @memberof GetResource
|
|
138
138
|
*/
|
|
139
139
|
archivedAt?: number | null;
|
|
140
|
+
/**
|
|
141
|
+
* Your own identifier for this resource, unique within the portal. Integrations can use it in place of id.
|
|
142
|
+
* @type {string}
|
|
143
|
+
* @memberof GetResource
|
|
144
|
+
*/
|
|
145
|
+
customerRef: string | null;
|
|
140
146
|
}
|
|
141
147
|
|
|
142
148
|
|
|
@@ -158,6 +164,7 @@ export function instanceOfGetResource(value: object): value is GetResource {
|
|
|
158
164
|
if (!('activeLearnerCount' in value) || value['activeLearnerCount'] === undefined) return false;
|
|
159
165
|
if (!('createdAt' in value) || value['createdAt'] === undefined) return false;
|
|
160
166
|
if (!('updatedAt' in value) || value['updatedAt'] === undefined) return false;
|
|
167
|
+
if (!('customerRef' in value) || value['customerRef'] === undefined) return false;
|
|
161
168
|
return true;
|
|
162
169
|
}
|
|
163
170
|
|
|
@@ -187,6 +194,7 @@ export function GetResourceFromJSONTyped(json: any, ignoreDiscriminator: boolean
|
|
|
187
194
|
'createdAt': json['created_at'],
|
|
188
195
|
'updatedAt': json['updated_at'],
|
|
189
196
|
'archivedAt': json['archived_at'] == null ? undefined : json['archived_at'],
|
|
197
|
+
'customerRef': json['customer_ref'],
|
|
190
198
|
};
|
|
191
199
|
}
|
|
192
200
|
|
|
@@ -217,6 +225,7 @@ export function GetResourceToJSONTyped(value?: GetResource | null, ignoreDiscrim
|
|
|
217
225
|
'created_at': value['createdAt'],
|
|
218
226
|
'updated_at': value['updatedAt'],
|
|
219
227
|
'archived_at': value['archivedAt'],
|
|
228
|
+
'customer_ref': value['customerRef'],
|
|
220
229
|
};
|
|
221
230
|
}
|
|
222
231
|
|
|
@@ -33,6 +33,12 @@ export interface GetResourceUsageCoursesInner {
|
|
|
33
33
|
* @memberof GetResourceUsageCoursesInner
|
|
34
34
|
*/
|
|
35
35
|
courseId: string;
|
|
36
|
+
/**
|
|
37
|
+
* Display name of the course
|
|
38
|
+
* @type {string}
|
|
39
|
+
* @memberof GetResourceUsageCoursesInner
|
|
40
|
+
*/
|
|
41
|
+
courseName: string;
|
|
36
42
|
/**
|
|
37
43
|
*
|
|
38
44
|
* @type {string}
|
|
@@ -72,6 +78,7 @@ export interface GetResourceUsageCoursesInner {
|
|
|
72
78
|
*/
|
|
73
79
|
export function instanceOfGetResourceUsageCoursesInner(value: object): value is GetResourceUsageCoursesInner {
|
|
74
80
|
if (!('courseId' in value) || value['courseId'] === undefined) return false;
|
|
81
|
+
if (!('courseName' in value) || value['courseName'] === undefined) return false;
|
|
75
82
|
if (!('courseVersionId' in value) || value['courseVersionId'] === undefined) return false;
|
|
76
83
|
if (!('courseVersionNumber' in value) || value['courseVersionNumber'] === undefined) return false;
|
|
77
84
|
if (!('courseStatus' in value) || value['courseStatus'] === undefined) return false;
|
|
@@ -91,6 +98,7 @@ export function GetResourceUsageCoursesInnerFromJSONTyped(json: any, ignoreDiscr
|
|
|
91
98
|
return {
|
|
92
99
|
|
|
93
100
|
'courseId': json['course_id'],
|
|
101
|
+
'courseName': json['course_name'],
|
|
94
102
|
'courseVersionId': json['course_version_id'],
|
|
95
103
|
'courseVersionNumber': json['course_version_number'],
|
|
96
104
|
'courseStatus': ContentLibraryVersionStatusFromJSON(json['course_status']),
|
|
@@ -111,6 +119,7 @@ export function GetResourceUsageCoursesInnerToJSONTyped(value?: GetResourceUsage
|
|
|
111
119
|
return {
|
|
112
120
|
|
|
113
121
|
'course_id': value['courseId'],
|
|
122
|
+
'course_name': value['courseName'],
|
|
114
123
|
'course_version_id': value['courseVersionId'],
|
|
115
124
|
'course_version_number': value['courseVersionNumber'],
|
|
116
125
|
'course_status': ContentLibraryVersionStatusToJSON(value['courseStatus']),
|
|
@@ -31,6 +31,12 @@ export interface IntegrationEventCourse {
|
|
|
31
31
|
* @memberof IntegrationEventCourse
|
|
32
32
|
*/
|
|
33
33
|
name: string;
|
|
34
|
+
/**
|
|
35
|
+
* Your identifier for this course, if set.
|
|
36
|
+
* @type {string}
|
|
37
|
+
* @memberof IntegrationEventCourse
|
|
38
|
+
*/
|
|
39
|
+
customerRef?: string | null;
|
|
34
40
|
}
|
|
35
41
|
|
|
36
42
|
/**
|
|
@@ -54,6 +60,7 @@ export function IntegrationEventCourseFromJSONTyped(json: any, ignoreDiscriminat
|
|
|
54
60
|
|
|
55
61
|
'id': json['id'],
|
|
56
62
|
'name': json['name'],
|
|
63
|
+
'customerRef': json['customer_ref'] == null ? undefined : json['customer_ref'],
|
|
57
64
|
};
|
|
58
65
|
}
|
|
59
66
|
|
|
@@ -70,6 +77,7 @@ export function IntegrationEventCourseToJSONTyped(value?: IntegrationEventCourse
|
|
|
70
77
|
|
|
71
78
|
'id': value['id'],
|
|
72
79
|
'name': value['name'],
|
|
80
|
+
'customer_ref': value['customerRef'],
|
|
73
81
|
};
|
|
74
82
|
}
|
|
75
83
|
|
|
@@ -43,6 +43,12 @@ export interface IntegrationEventLearner {
|
|
|
43
43
|
* @memberof IntegrationEventLearner
|
|
44
44
|
*/
|
|
45
45
|
lastName: string;
|
|
46
|
+
/**
|
|
47
|
+
* Your identifier for this learner in the event portal, if set.
|
|
48
|
+
* @type {string}
|
|
49
|
+
* @memberof IntegrationEventLearner
|
|
50
|
+
*/
|
|
51
|
+
customerRef?: string | null;
|
|
46
52
|
}
|
|
47
53
|
|
|
48
54
|
/**
|
|
@@ -70,6 +76,7 @@ export function IntegrationEventLearnerFromJSONTyped(json: any, ignoreDiscrimina
|
|
|
70
76
|
'email': json['email'],
|
|
71
77
|
'firstName': json['first_name'],
|
|
72
78
|
'lastName': json['last_name'],
|
|
79
|
+
'customerRef': json['customer_ref'] == null ? undefined : json['customer_ref'],
|
|
73
80
|
};
|
|
74
81
|
}
|
|
75
82
|
|
|
@@ -88,6 +95,7 @@ export function IntegrationEventLearnerToJSONTyped(value?: IntegrationEventLearn
|
|
|
88
95
|
'email': value['email'],
|
|
89
96
|
'first_name': value['firstName'],
|
|
90
97
|
'last_name': value['lastName'],
|
|
98
|
+
'customer_ref': value['customerRef'],
|
|
91
99
|
};
|
|
92
100
|
}
|
|
93
101
|
|
|
@@ -43,6 +43,12 @@ export interface IntegrationEventUser {
|
|
|
43
43
|
* @memberof IntegrationEventUser
|
|
44
44
|
*/
|
|
45
45
|
lastName: string;
|
|
46
|
+
/**
|
|
47
|
+
* Your identifier for this user in the event portal, if set.
|
|
48
|
+
* @type {string}
|
|
49
|
+
* @memberof IntegrationEventUser
|
|
50
|
+
*/
|
|
51
|
+
customerRef?: string | null;
|
|
46
52
|
}
|
|
47
53
|
|
|
48
54
|
/**
|
|
@@ -70,6 +76,7 @@ export function IntegrationEventUserFromJSONTyped(json: any, ignoreDiscriminator
|
|
|
70
76
|
'email': json['email'],
|
|
71
77
|
'firstName': json['first_name'],
|
|
72
78
|
'lastName': json['last_name'],
|
|
79
|
+
'customerRef': json['customer_ref'] == null ? undefined : json['customer_ref'],
|
|
73
80
|
};
|
|
74
81
|
}
|
|
75
82
|
|
|
@@ -88,6 +95,7 @@ export function IntegrationEventUserToJSONTyped(value?: IntegrationEventUser | n
|
|
|
88
95
|
'email': value['email'],
|
|
89
96
|
'first_name': value['firstName'],
|
|
90
97
|
'last_name': value['lastName'],
|
|
98
|
+
'customer_ref': value['customerRef'],
|
|
91
99
|
};
|
|
92
100
|
}
|
|
93
101
|
|
package/src/models/PostCourse.ts
CHANGED
|
@@ -57,6 +57,12 @@ export interface PostCourse {
|
|
|
57
57
|
* @memberof PostCourse
|
|
58
58
|
*/
|
|
59
59
|
tags?: Set<string>;
|
|
60
|
+
/**
|
|
61
|
+
* Your own identifier for this course, unique within the portal. Integrations such as Zapier can use it in place of id.
|
|
62
|
+
* @type {string}
|
|
63
|
+
* @memberof PostCourse
|
|
64
|
+
*/
|
|
65
|
+
customerRef?: string | null;
|
|
60
66
|
}
|
|
61
67
|
|
|
62
68
|
|
|
@@ -96,6 +102,7 @@ export function PostCourseFromJSONTyped(json: any, ignoreDiscriminator: boolean)
|
|
|
96
102
|
'accessDurationDays': json['access_duration_days'] == null ? undefined : json['access_duration_days'],
|
|
97
103
|
'accessFixedEndAt': json['access_fixed_end_at'] == null ? undefined : json['access_fixed_end_at'],
|
|
98
104
|
'tags': json['tags'] == null ? undefined : new Set(json['tags']),
|
|
105
|
+
'customerRef': json['customer_ref'] == null ? undefined : json['customer_ref'],
|
|
99
106
|
};
|
|
100
107
|
}
|
|
101
108
|
|
|
@@ -116,6 +123,7 @@ export function PostCourseToJSONTyped(value?: PostCourse | null, ignoreDiscrimin
|
|
|
116
123
|
'access_duration_days': value['accessDurationDays'],
|
|
117
124
|
'access_fixed_end_at': value['accessFixedEndAt'],
|
|
118
125
|
'tags': value['tags'] == null ? undefined : Array.from(value['tags'] as Set<any>),
|
|
126
|
+
'customer_ref': value['customerRef'],
|
|
119
127
|
};
|
|
120
128
|
}
|
|
121
129
|
|
|
@@ -43,6 +43,12 @@ export interface PostPortalInvite {
|
|
|
43
43
|
* @memberof PostPortalInvite
|
|
44
44
|
*/
|
|
45
45
|
userType: PostPortalInviteUserTypeEnum;
|
|
46
|
+
/**
|
|
47
|
+
* Your own identifier for this user in this portal, unique within the portal. Integrations such as Zapier can use it in place of the user id.
|
|
48
|
+
* @type {string}
|
|
49
|
+
* @memberof PostPortalInvite
|
|
50
|
+
*/
|
|
51
|
+
customerRef?: string | null;
|
|
46
52
|
}
|
|
47
53
|
|
|
48
54
|
|
|
@@ -86,6 +92,7 @@ export function PostPortalInviteFromJSONTyped(json: any, ignoreDiscriminator: bo
|
|
|
86
92
|
'firstName': json['first_name'],
|
|
87
93
|
'lastName': json['last_name'],
|
|
88
94
|
'userType': json['user_type'],
|
|
95
|
+
'customerRef': json['customer_ref'] == null ? undefined : json['customer_ref'],
|
|
89
96
|
};
|
|
90
97
|
}
|
|
91
98
|
|
|
@@ -104,6 +111,7 @@ export function PostPortalInviteToJSONTyped(value?: PostPortalInvite | null, ign
|
|
|
104
111
|
'first_name': value['firstName'],
|
|
105
112
|
'last_name': value['lastName'],
|
|
106
113
|
'user_type': value['userType'],
|
|
114
|
+
'customer_ref': value['customerRef'],
|
|
107
115
|
};
|
|
108
116
|
}
|
|
109
117
|
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* LMS API
|
|
5
|
+
* LMS API
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 1.0.0
|
|
8
|
+
*
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
import { mapValues } from '../runtime';
|
|
16
|
+
/**
|
|
17
|
+
* Adds shared tags to several questions at once without creating new question versions.
|
|
18
|
+
* @export
|
|
19
|
+
* @interface PostQuestionTags
|
|
20
|
+
*/
|
|
21
|
+
export interface PostQuestionTags {
|
|
22
|
+
/**
|
|
23
|
+
* External IDs of the questions to tag
|
|
24
|
+
* @type {Array<string>}
|
|
25
|
+
* @memberof PostQuestionTags
|
|
26
|
+
*/
|
|
27
|
+
questionIds: Array<string>;
|
|
28
|
+
/**
|
|
29
|
+
* Tag names to add. Existing tags on each question are kept.
|
|
30
|
+
* @type {Array<string>}
|
|
31
|
+
* @memberof PostQuestionTags
|
|
32
|
+
*/
|
|
33
|
+
tags: Array<string>;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Check if a given object implements the PostQuestionTags interface.
|
|
38
|
+
*/
|
|
39
|
+
export function instanceOfPostQuestionTags(value: object): value is PostQuestionTags {
|
|
40
|
+
if (!('questionIds' in value) || value['questionIds'] === undefined) return false;
|
|
41
|
+
if (!('tags' in value) || value['tags'] === undefined) return false;
|
|
42
|
+
return true;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export function PostQuestionTagsFromJSON(json: any): PostQuestionTags {
|
|
46
|
+
return PostQuestionTagsFromJSONTyped(json, false);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export function PostQuestionTagsFromJSONTyped(json: any, ignoreDiscriminator: boolean): PostQuestionTags {
|
|
50
|
+
if (json == null) {
|
|
51
|
+
return json;
|
|
52
|
+
}
|
|
53
|
+
return {
|
|
54
|
+
|
|
55
|
+
'questionIds': json['question_ids'],
|
|
56
|
+
'tags': json['tags'],
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
export function PostQuestionTagsToJSON(json: any): PostQuestionTags {
|
|
61
|
+
return PostQuestionTagsToJSONTyped(json, false);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export function PostQuestionTagsToJSONTyped(value?: PostQuestionTags | null, ignoreDiscriminator: boolean = false): any {
|
|
65
|
+
if (value == null) {
|
|
66
|
+
return value;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
return {
|
|
70
|
+
|
|
71
|
+
'question_ids': value['questionIds'],
|
|
72
|
+
'tags': value['tags'],
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* LMS API
|
|
5
|
+
* LMS API
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 1.0.0
|
|
8
|
+
*
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
import { mapValues } from '../runtime';
|
|
16
|
+
/**
|
|
17
|
+
*
|
|
18
|
+
* @export
|
|
19
|
+
* @interface PostQuestionTagsResponse
|
|
20
|
+
*/
|
|
21
|
+
export interface PostQuestionTagsResponse {
|
|
22
|
+
/**
|
|
23
|
+
* Number of questions that received the tags
|
|
24
|
+
* @type {number}
|
|
25
|
+
* @memberof PostQuestionTagsResponse
|
|
26
|
+
*/
|
|
27
|
+
updatedCount: number;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Check if a given object implements the PostQuestionTagsResponse interface.
|
|
32
|
+
*/
|
|
33
|
+
export function instanceOfPostQuestionTagsResponse(value: object): value is PostQuestionTagsResponse {
|
|
34
|
+
if (!('updatedCount' in value) || value['updatedCount'] === undefined) return false;
|
|
35
|
+
return true;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export function PostQuestionTagsResponseFromJSON(json: any): PostQuestionTagsResponse {
|
|
39
|
+
return PostQuestionTagsResponseFromJSONTyped(json, false);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export function PostQuestionTagsResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): PostQuestionTagsResponse {
|
|
43
|
+
if (json == null) {
|
|
44
|
+
return json;
|
|
45
|
+
}
|
|
46
|
+
return {
|
|
47
|
+
|
|
48
|
+
'updatedCount': json['updated_count'],
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export function PostQuestionTagsResponseToJSON(json: any): PostQuestionTagsResponse {
|
|
53
|
+
return PostQuestionTagsResponseToJSONTyped(json, false);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export function PostQuestionTagsResponseToJSONTyped(value?: PostQuestionTagsResponse | null, ignoreDiscriminator: boolean = false): any {
|
|
57
|
+
if (value == null) {
|
|
58
|
+
return value;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
return {
|
|
62
|
+
|
|
63
|
+
'updated_count': value['updatedCount'],
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
|
|
@@ -70,6 +70,12 @@ export interface PostResource {
|
|
|
70
70
|
* @memberof PostResource
|
|
71
71
|
*/
|
|
72
72
|
tags?: Set<string>;
|
|
73
|
+
/**
|
|
74
|
+
* Your own identifier for this resource, unique within the portal. Integrations can use it in place of id.
|
|
75
|
+
* @type {string}
|
|
76
|
+
* @memberof PostResource
|
|
77
|
+
*/
|
|
78
|
+
customerRef?: string | null;
|
|
73
79
|
}
|
|
74
80
|
|
|
75
81
|
|
|
@@ -99,6 +105,7 @@ export function PostResourceFromJSONTyped(json: any, ignoreDiscriminator: boolea
|
|
|
99
105
|
'linkUrl': json['link_url'] == null ? undefined : json['link_url'],
|
|
100
106
|
'richText': json['rich_text'] == null ? undefined : RichTextInputFromJSON(json['rich_text']),
|
|
101
107
|
'tags': json['tags'] == null ? undefined : new Set(json['tags']),
|
|
108
|
+
'customerRef': json['customer_ref'] == null ? undefined : json['customer_ref'],
|
|
102
109
|
};
|
|
103
110
|
}
|
|
104
111
|
|
|
@@ -119,6 +126,7 @@ export function PostResourceToJSONTyped(value?: PostResource | null, ignoreDiscr
|
|
|
119
126
|
'link_url': value['linkUrl'],
|
|
120
127
|
'rich_text': RichTextInputToJSON(value['richText']),
|
|
121
128
|
'tags': value['tags'] == null ? undefined : Array.from(value['tags'] as Set<any>),
|
|
129
|
+
'customer_ref': value['customerRef'],
|
|
122
130
|
};
|
|
123
131
|
}
|
|
124
132
|
|
|
@@ -55,6 +55,12 @@ export interface PostRichTextAssetUpload {
|
|
|
55
55
|
* @memberof PostRichTextAssetUpload
|
|
56
56
|
*/
|
|
57
57
|
usageContext: PostRichTextAssetUploadUsageContextEnum;
|
|
58
|
+
/**
|
|
59
|
+
* Your own identifier for this asset, unique within the portal.
|
|
60
|
+
* @type {string}
|
|
61
|
+
* @memberof PostRichTextAssetUpload
|
|
62
|
+
*/
|
|
63
|
+
customerRef?: string | null;
|
|
58
64
|
}
|
|
59
65
|
|
|
60
66
|
|
|
@@ -94,6 +100,7 @@ export function PostRichTextAssetUploadFromJSONTyped(json: any, ignoreDiscrimina
|
|
|
94
100
|
'width': json['width'] == null ? undefined : json['width'],
|
|
95
101
|
'height': json['height'] == null ? undefined : json['height'],
|
|
96
102
|
'usageContext': json['usage_context'],
|
|
103
|
+
'customerRef': json['customer_ref'] == null ? undefined : json['customer_ref'],
|
|
97
104
|
};
|
|
98
105
|
}
|
|
99
106
|
|
|
@@ -114,6 +121,7 @@ export function PostRichTextAssetUploadToJSONTyped(value?: PostRichTextAssetUplo
|
|
|
114
121
|
'width': value['width'],
|
|
115
122
|
'height': value['height'],
|
|
116
123
|
'usage_context': value['usageContext'],
|
|
124
|
+
'customer_ref': value['customerRef'],
|
|
117
125
|
};
|
|
118
126
|
}
|
|
119
127
|
|
|
@@ -20,17 +20,17 @@ import { mapValues } from '../runtime';
|
|
|
20
20
|
*/
|
|
21
21
|
export interface PostZapierEnrollment {
|
|
22
22
|
/**
|
|
23
|
-
*
|
|
23
|
+
* Course id. Send this or course_customer_ref.
|
|
24
24
|
* @type {string}
|
|
25
25
|
* @memberof PostZapierEnrollment
|
|
26
26
|
*/
|
|
27
|
-
courseId
|
|
27
|
+
courseId?: string;
|
|
28
28
|
/**
|
|
29
|
-
*
|
|
29
|
+
* User id. Send this or user_customer_ref.
|
|
30
30
|
* @type {string}
|
|
31
31
|
* @memberof PostZapierEnrollment
|
|
32
32
|
*/
|
|
33
|
-
userId
|
|
33
|
+
userId?: string;
|
|
34
34
|
/**
|
|
35
35
|
* Stable source event ID used to make retries safe.
|
|
36
36
|
* @type {string}
|
|
@@ -61,6 +61,18 @@ export interface PostZapierEnrollment {
|
|
|
61
61
|
* @memberof PostZapierEnrollment
|
|
62
62
|
*/
|
|
63
63
|
reEnrollmentMode?: PostZapierEnrollmentReEnrollmentModeEnum;
|
|
64
|
+
/**
|
|
65
|
+
* Your identifier for the course. Send this or course_id.
|
|
66
|
+
* @type {string}
|
|
67
|
+
* @memberof PostZapierEnrollment
|
|
68
|
+
*/
|
|
69
|
+
courseCustomerRef?: string | null;
|
|
70
|
+
/**
|
|
71
|
+
* Your identifier for the learner. Send this or user_id.
|
|
72
|
+
* @type {string}
|
|
73
|
+
* @memberof PostZapierEnrollment
|
|
74
|
+
*/
|
|
75
|
+
userCustomerRef?: string | null;
|
|
64
76
|
}
|
|
65
77
|
|
|
66
78
|
|
|
@@ -78,8 +90,6 @@ export type PostZapierEnrollmentReEnrollmentModeEnum = typeof PostZapierEnrollme
|
|
|
78
90
|
* Check if a given object implements the PostZapierEnrollment interface.
|
|
79
91
|
*/
|
|
80
92
|
export function instanceOfPostZapierEnrollment(value: object): value is PostZapierEnrollment {
|
|
81
|
-
if (!('courseId' in value) || value['courseId'] === undefined) return false;
|
|
82
|
-
if (!('userId' in value) || value['userId'] === undefined) return false;
|
|
83
93
|
return true;
|
|
84
94
|
}
|
|
85
95
|
|
|
@@ -93,13 +103,15 @@ export function PostZapierEnrollmentFromJSONTyped(json: any, ignoreDiscriminator
|
|
|
93
103
|
}
|
|
94
104
|
return {
|
|
95
105
|
|
|
96
|
-
'courseId': json['course_id'],
|
|
97
|
-
'userId': json['user_id'],
|
|
106
|
+
'courseId': json['course_id'] == null ? undefined : json['course_id'],
|
|
107
|
+
'userId': json['user_id'] == null ? undefined : json['user_id'],
|
|
98
108
|
'idempotencyKey': json['idempotency_key'] == null ? undefined : json['idempotency_key'],
|
|
99
109
|
'enrollmentDateStart': json['enrollment_date_start'] == null ? undefined : json['enrollment_date_start'],
|
|
100
110
|
'enrollmentDateEnd': json['enrollment_date_end'] == null ? undefined : json['enrollment_date_end'],
|
|
101
111
|
'notes': json['notes'] == null ? undefined : json['notes'],
|
|
102
112
|
'reEnrollmentMode': json['re_enrollment_mode'] == null ? undefined : json['re_enrollment_mode'],
|
|
113
|
+
'courseCustomerRef': json['course_customer_ref'] == null ? undefined : json['course_customer_ref'],
|
|
114
|
+
'userCustomerRef': json['user_customer_ref'] == null ? undefined : json['user_customer_ref'],
|
|
103
115
|
};
|
|
104
116
|
}
|
|
105
117
|
|
|
@@ -121,6 +133,8 @@ export function PostZapierEnrollmentToJSONTyped(value?: PostZapierEnrollment | n
|
|
|
121
133
|
'enrollment_date_end': value['enrollmentDateEnd'],
|
|
122
134
|
'notes': value['notes'],
|
|
123
135
|
're_enrollment_mode': value['reEnrollmentMode'],
|
|
136
|
+
'course_customer_ref': value['courseCustomerRef'],
|
|
137
|
+
'user_customer_ref': value['userCustomerRef'],
|
|
124
138
|
};
|
|
125
139
|
}
|
|
126
140
|
|