@easyedu/js-lsm-api 1.113.0 → 1.115.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.
Files changed (67) hide show
  1. package/.openapi-generator/FILES +16 -0
  2. package/README.md +14 -2
  3. package/dist/apis/IntegrationApi.d.ts +97 -0
  4. package/dist/apis/IntegrationApi.js +242 -0
  5. package/dist/apis/index.d.ts +1 -0
  6. package/dist/apis/index.js +1 -0
  7. package/dist/esm/apis/IntegrationApi.d.ts +97 -0
  8. package/dist/esm/apis/IntegrationApi.js +238 -0
  9. package/dist/esm/apis/index.d.ts +1 -0
  10. package/dist/esm/apis/index.js +1 -0
  11. package/dist/esm/models/ChatFeatureUsage.d.ts +47 -0
  12. package/dist/esm/models/ChatFeatureUsage.js +55 -0
  13. package/dist/esm/models/GetChatUsage.d.ts +7 -0
  14. package/dist/esm/models/GetChatUsage.js +5 -0
  15. package/dist/esm/models/GetZapierMe.d.ts +62 -0
  16. package/dist/esm/models/GetZapierMe.js +63 -0
  17. package/dist/esm/models/GetZapierSetup.d.ts +40 -0
  18. package/dist/esm/models/GetZapierSetup.js +49 -0
  19. package/dist/esm/models/PostZapierSetup.d.ts +38 -0
  20. package/dist/esm/models/PostZapierSetup.js +47 -0
  21. package/dist/esm/models/PostZapierSetupResponse.d.ts +39 -0
  22. package/dist/esm/models/PostZapierSetupResponse.js +48 -0
  23. package/dist/esm/models/PutZapierSetup.d.ts +38 -0
  24. package/dist/esm/models/PutZapierSetup.js +43 -0
  25. package/dist/esm/models/ZapierIntegration.d.ts +92 -0
  26. package/dist/esm/models/ZapierIntegration.js +79 -0
  27. package/dist/esm/models/index.d.ts +7 -0
  28. package/dist/esm/models/index.js +7 -0
  29. package/dist/models/ChatFeatureUsage.d.ts +47 -0
  30. package/dist/models/ChatFeatureUsage.js +63 -0
  31. package/dist/models/GetChatUsage.d.ts +7 -0
  32. package/dist/models/GetChatUsage.js +5 -0
  33. package/dist/models/GetZapierMe.d.ts +62 -0
  34. package/dist/models/GetZapierMe.js +70 -0
  35. package/dist/models/GetZapierSetup.d.ts +40 -0
  36. package/dist/models/GetZapierSetup.js +56 -0
  37. package/dist/models/PostZapierSetup.d.ts +38 -0
  38. package/dist/models/PostZapierSetup.js +54 -0
  39. package/dist/models/PostZapierSetupResponse.d.ts +39 -0
  40. package/dist/models/PostZapierSetupResponse.js +55 -0
  41. package/dist/models/PutZapierSetup.d.ts +38 -0
  42. package/dist/models/PutZapierSetup.js +50 -0
  43. package/dist/models/ZapierIntegration.d.ts +92 -0
  44. package/dist/models/ZapierIntegration.js +86 -0
  45. package/dist/models/index.d.ts +7 -0
  46. package/dist/models/index.js +7 -0
  47. package/docs/ChatFeatureUsage.md +36 -0
  48. package/docs/GetChatUsage.md +2 -0
  49. package/docs/GetZapierMe.md +44 -0
  50. package/docs/GetZapierSetup.md +36 -0
  51. package/docs/IntegrationApi.md +346 -0
  52. package/docs/PostZapierSetup.md +36 -0
  53. package/docs/PostZapierSetupResponse.md +37 -0
  54. package/docs/PutZapierSetup.md +36 -0
  55. package/docs/ZapierIntegration.md +55 -0
  56. package/package.json +1 -1
  57. package/src/apis/IntegrationApi.ts +312 -0
  58. package/src/apis/index.ts +1 -0
  59. package/src/models/ChatFeatureUsage.ts +94 -0
  60. package/src/models/GetChatUsage.ts +16 -0
  61. package/src/models/GetZapierMe.ts +111 -0
  62. package/src/models/GetZapierSetup.ts +90 -0
  63. package/src/models/PostZapierSetup.ts +75 -0
  64. package/src/models/PostZapierSetupResponse.ts +83 -0
  65. package/src/models/PutZapierSetup.ts +73 -0
  66. package/src/models/ZapierIntegration.ts +154 -0
  67. package/src/models/index.ts +7 -0
@@ -0,0 +1,55 @@
1
+
2
+ # ZapierIntegration
3
+
4
+ A portal-scoped Zapier connection. The API key secret is never included here.
5
+
6
+ ## Properties
7
+
8
+ Name | Type
9
+ ------------ | -------------
10
+ `id` | string
11
+ `name` | string
12
+ `portalId` | string
13
+ `portalName` | string
14
+ `portalSubdomain` | string
15
+ `keyPrefix` | string
16
+ `permissionKeys` | Array<string>
17
+ `createdAt` | number
18
+ `updatedAt` | number
19
+ `lastUsedAt` | number
20
+ `revokedAt` | number
21
+
22
+ ## Example
23
+
24
+ ```typescript
25
+ import type { ZapierIntegration } from '@easyedu/js-lsm-api'
26
+
27
+ // TODO: Update the object below with actual values
28
+ const example = {
29
+ "id": null,
30
+ "name": null,
31
+ "portalId": null,
32
+ "portalName": null,
33
+ "portalSubdomain": null,
34
+ "keyPrefix": null,
35
+ "permissionKeys": null,
36
+ "createdAt": null,
37
+ "updatedAt": null,
38
+ "lastUsedAt": null,
39
+ "revokedAt": null,
40
+ } satisfies ZapierIntegration
41
+
42
+ console.log(example)
43
+
44
+ // Convert the instance to a JSON string
45
+ const exampleJSON: string = JSON.stringify(example)
46
+ console.log(exampleJSON)
47
+
48
+ // Parse the JSON string back to an object
49
+ const exampleParsed = JSON.parse(exampleJSON) as ZapierIntegration
50
+ console.log(exampleParsed)
51
+ ```
52
+
53
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
54
+
55
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@easyedu/js-lsm-api",
3
- "version": "1.113.0",
3
+ "version": "1.115.0",
4
4
  "description": "OpenAPI client for @easyedu/js-lsm-api",
5
5
  "author": "OpenAPI-Generator",
6
6
  "repository": {
@@ -0,0 +1,312 @@
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 * as runtime from '../runtime';
16
+ import {
17
+ type GetZapierMe,
18
+ GetZapierMeFromJSON,
19
+ GetZapierMeToJSON,
20
+ } from '../models/GetZapierMe';
21
+ import {
22
+ type GetZapierSetup,
23
+ GetZapierSetupFromJSON,
24
+ GetZapierSetupToJSON,
25
+ } from '../models/GetZapierSetup';
26
+ import {
27
+ type PostZapierSetup,
28
+ PostZapierSetupFromJSON,
29
+ PostZapierSetupToJSON,
30
+ } from '../models/PostZapierSetup';
31
+ import {
32
+ type PostZapierSetupResponse,
33
+ PostZapierSetupResponseFromJSON,
34
+ PostZapierSetupResponseToJSON,
35
+ } from '../models/PostZapierSetupResponse';
36
+ import {
37
+ type PutZapierSetup,
38
+ PutZapierSetupFromJSON,
39
+ PutZapierSetupToJSON,
40
+ } from '../models/PutZapierSetup';
41
+ import {
42
+ type ZapierIntegration,
43
+ ZapierIntegrationFromJSON,
44
+ ZapierIntegrationToJSON,
45
+ } from '../models/ZapierIntegration';
46
+
47
+ export interface DeleteZapierSetupRequest {
48
+ zapierIntegrationId: string;
49
+ }
50
+
51
+ export interface GetZapierMeRequest {
52
+ xAPIKEY: string;
53
+ xPORTALSUBDOMAIN: string;
54
+ }
55
+
56
+ export interface PostZapierSetupRequest {
57
+ postZapierSetup: PostZapierSetup;
58
+ }
59
+
60
+ export interface PutZapierSetupRequest {
61
+ zapierIntegrationId: string;
62
+ putZapierSetup: PutZapierSetup;
63
+ }
64
+
65
+ /**
66
+ *
67
+ */
68
+ export class IntegrationApi extends runtime.BaseAPI {
69
+
70
+ /**
71
+ * Creates request options for deleteZapierSetup without sending the request
72
+ */
73
+ async deleteZapierSetupRequestOpts(requestParameters: DeleteZapierSetupRequest): Promise<runtime.RequestOpts> {
74
+ if (requestParameters['zapierIntegrationId'] == null) {
75
+ throw new runtime.RequiredError(
76
+ 'zapierIntegrationId',
77
+ 'Required parameter "zapierIntegrationId" was null or undefined when calling deleteZapierSetup().'
78
+ );
79
+ }
80
+
81
+ const queryParameters: any = {};
82
+
83
+ const headerParameters: runtime.HTTPHeaders = {};
84
+
85
+
86
+ let urlPath = `/integrations/zapier/setup/{zapierIntegrationId}`;
87
+ urlPath = urlPath.replace('{zapierIntegrationId}', encodeURIComponent(String(requestParameters['zapierIntegrationId'])));
88
+
89
+ return {
90
+ path: urlPath,
91
+ method: 'DELETE',
92
+ headers: headerParameters,
93
+ query: queryParameters,
94
+ };
95
+ }
96
+
97
+ /**
98
+ * Revoke a Zapier connection and its API key
99
+ */
100
+ async deleteZapierSetupRaw(requestParameters: DeleteZapierSetupRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
101
+ const requestOptions = await this.deleteZapierSetupRequestOpts(requestParameters);
102
+ const response = await this.request(requestOptions, initOverrides);
103
+
104
+ return new runtime.VoidApiResponse(response);
105
+ }
106
+
107
+ /**
108
+ * Revoke a Zapier connection and its API key
109
+ */
110
+ async deleteZapierSetup(requestParameters: DeleteZapierSetupRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
111
+ await this.deleteZapierSetupRaw(requestParameters, initOverrides);
112
+ }
113
+
114
+ /**
115
+ * Creates request options for getZapierMe without sending the request
116
+ */
117
+ async getZapierMeRequestOpts(requestParameters: GetZapierMeRequest): Promise<runtime.RequestOpts> {
118
+ if (requestParameters['xAPIKEY'] == null) {
119
+ throw new runtime.RequiredError(
120
+ 'xAPIKEY',
121
+ 'Required parameter "xAPIKEY" was null or undefined when calling getZapierMe().'
122
+ );
123
+ }
124
+
125
+ if (requestParameters['xPORTALSUBDOMAIN'] == null) {
126
+ throw new runtime.RequiredError(
127
+ 'xPORTALSUBDOMAIN',
128
+ 'Required parameter "xPORTALSUBDOMAIN" was null or undefined when calling getZapierMe().'
129
+ );
130
+ }
131
+
132
+ const queryParameters: any = {};
133
+
134
+ const headerParameters: runtime.HTTPHeaders = {};
135
+
136
+ if (requestParameters['xAPIKEY'] != null) {
137
+ headerParameters['X-API-KEY'] = String(requestParameters['xAPIKEY']);
138
+ }
139
+
140
+ if (requestParameters['xPORTALSUBDOMAIN'] != null) {
141
+ headerParameters['X-PORTAL-SUBDOMAIN'] = String(requestParameters['xPORTALSUBDOMAIN']);
142
+ }
143
+
144
+
145
+ let urlPath = `/integrations/zapier/me`;
146
+
147
+ return {
148
+ path: urlPath,
149
+ method: 'GET',
150
+ headers: headerParameters,
151
+ query: queryParameters,
152
+ };
153
+ }
154
+
155
+ /**
156
+ * Test a Zapier API key and return its portal and enabled permissions
157
+ */
158
+ async getZapierMeRaw(requestParameters: GetZapierMeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetZapierMe>> {
159
+ const requestOptions = await this.getZapierMeRequestOpts(requestParameters);
160
+ const response = await this.request(requestOptions, initOverrides);
161
+
162
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetZapierMeFromJSON(jsonValue));
163
+ }
164
+
165
+ /**
166
+ * Test a Zapier API key and return its portal and enabled permissions
167
+ */
168
+ async getZapierMe(requestParameters: GetZapierMeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetZapierMe> {
169
+ const response = await this.getZapierMeRaw(requestParameters, initOverrides);
170
+ return await response.value();
171
+ }
172
+
173
+ /**
174
+ * Creates request options for getZapierSetup without sending the request
175
+ */
176
+ async getZapierSetupRequestOpts(): Promise<runtime.RequestOpts> {
177
+ const queryParameters: any = {};
178
+
179
+ const headerParameters: runtime.HTTPHeaders = {};
180
+
181
+
182
+ let urlPath = `/integrations/zapier/setup`;
183
+
184
+ return {
185
+ path: urlPath,
186
+ method: 'GET',
187
+ headers: headerParameters,
188
+ query: queryParameters,
189
+ };
190
+ }
191
+
192
+ /**
193
+ * List Zapier connections and permissions available to the selected portal
194
+ */
195
+ async getZapierSetupRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetZapierSetup>> {
196
+ const requestOptions = await this.getZapierSetupRequestOpts();
197
+ const response = await this.request(requestOptions, initOverrides);
198
+
199
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetZapierSetupFromJSON(jsonValue));
200
+ }
201
+
202
+ /**
203
+ * List Zapier connections and permissions available to the selected portal
204
+ */
205
+ async getZapierSetup(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetZapierSetup> {
206
+ const response = await this.getZapierSetupRaw(initOverrides);
207
+ return await response.value();
208
+ }
209
+
210
+ /**
211
+ * Creates request options for postZapierSetup without sending the request
212
+ */
213
+ async postZapierSetupRequestOpts(requestParameters: PostZapierSetupRequest): Promise<runtime.RequestOpts> {
214
+ if (requestParameters['postZapierSetup'] == null) {
215
+ throw new runtime.RequiredError(
216
+ 'postZapierSetup',
217
+ 'Required parameter "postZapierSetup" was null or undefined when calling postZapierSetup().'
218
+ );
219
+ }
220
+
221
+ const queryParameters: any = {};
222
+
223
+ const headerParameters: runtime.HTTPHeaders = {};
224
+
225
+ headerParameters['Content-Type'] = 'application/json';
226
+
227
+
228
+ let urlPath = `/integrations/zapier/setup`;
229
+
230
+ return {
231
+ path: urlPath,
232
+ method: 'POST',
233
+ headers: headerParameters,
234
+ query: queryParameters,
235
+ body: PostZapierSetupToJSON(requestParameters['postZapierSetup']),
236
+ };
237
+ }
238
+
239
+ /**
240
+ * Create a Zapier connection and API key for the selected portal
241
+ */
242
+ async postZapierSetupRaw(requestParameters: PostZapierSetupRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PostZapierSetupResponse>> {
243
+ const requestOptions = await this.postZapierSetupRequestOpts(requestParameters);
244
+ const response = await this.request(requestOptions, initOverrides);
245
+
246
+ return new runtime.JSONApiResponse(response, (jsonValue) => PostZapierSetupResponseFromJSON(jsonValue));
247
+ }
248
+
249
+ /**
250
+ * Create a Zapier connection and API key for the selected portal
251
+ */
252
+ async postZapierSetup(requestParameters: PostZapierSetupRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PostZapierSetupResponse> {
253
+ const response = await this.postZapierSetupRaw(requestParameters, initOverrides);
254
+ return await response.value();
255
+ }
256
+
257
+ /**
258
+ * Creates request options for putZapierSetup without sending the request
259
+ */
260
+ async putZapierSetupRequestOpts(requestParameters: PutZapierSetupRequest): Promise<runtime.RequestOpts> {
261
+ if (requestParameters['zapierIntegrationId'] == null) {
262
+ throw new runtime.RequiredError(
263
+ 'zapierIntegrationId',
264
+ 'Required parameter "zapierIntegrationId" was null or undefined when calling putZapierSetup().'
265
+ );
266
+ }
267
+
268
+ if (requestParameters['putZapierSetup'] == null) {
269
+ throw new runtime.RequiredError(
270
+ 'putZapierSetup',
271
+ 'Required parameter "putZapierSetup" was null or undefined when calling putZapierSetup().'
272
+ );
273
+ }
274
+
275
+ const queryParameters: any = {};
276
+
277
+ const headerParameters: runtime.HTTPHeaders = {};
278
+
279
+ headerParameters['Content-Type'] = 'application/json';
280
+
281
+
282
+ let urlPath = `/integrations/zapier/setup/{zapierIntegrationId}`;
283
+ urlPath = urlPath.replace('{zapierIntegrationId}', encodeURIComponent(String(requestParameters['zapierIntegrationId'])));
284
+
285
+ return {
286
+ path: urlPath,
287
+ method: 'PUT',
288
+ headers: headerParameters,
289
+ query: queryParameters,
290
+ body: PutZapierSetupToJSON(requestParameters['putZapierSetup']),
291
+ };
292
+ }
293
+
294
+ /**
295
+ * Update a Zapier connection\'s name or permissions
296
+ */
297
+ async putZapierSetupRaw(requestParameters: PutZapierSetupRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ZapierIntegration>> {
298
+ const requestOptions = await this.putZapierSetupRequestOpts(requestParameters);
299
+ const response = await this.request(requestOptions, initOverrides);
300
+
301
+ return new runtime.JSONApiResponse(response, (jsonValue) => ZapierIntegrationFromJSON(jsonValue));
302
+ }
303
+
304
+ /**
305
+ * Update a Zapier connection\'s name or permissions
306
+ */
307
+ async putZapierSetup(requestParameters: PutZapierSetupRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ZapierIntegration> {
308
+ const response = await this.putZapierSetupRaw(requestParameters, initOverrides);
309
+ return await response.value();
310
+ }
311
+
312
+ }
package/src/apis/index.ts CHANGED
@@ -11,6 +11,7 @@ export * from './CourseCatalogApi';
11
11
  export * from './CourseShareApi';
12
12
  export * from './DispatchApi';
13
13
  export * from './EmailTemplateApi';
14
+ export * from './IntegrationApi';
14
15
  export * from './LearnerExperienceApi';
15
16
  export * from './OtherApi';
16
17
  export * from './PlayerApi';
@@ -0,0 +1,94 @@
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
+ import type { ChatUsageTotals } from './ChatUsageTotals';
17
+ import {
18
+ ChatUsageTotalsFromJSON,
19
+ ChatUsageTotalsFromJSONTyped,
20
+ ChatUsageTotalsToJSON,
21
+ ChatUsageTotalsToJSONTyped,
22
+ } from './ChatUsageTotals';
23
+
24
+ /**
25
+ *
26
+ * @export
27
+ * @interface ChatFeatureUsage
28
+ */
29
+ export interface ChatFeatureUsage {
30
+ /**
31
+ *
32
+ * @type {ChatFeatureUsageFeatureEnum}
33
+ * @memberof ChatFeatureUsage
34
+ */
35
+ feature: ChatFeatureUsageFeatureEnum;
36
+ /**
37
+ *
38
+ * @type {ChatUsageTotals}
39
+ * @memberof ChatFeatureUsage
40
+ */
41
+ usage: ChatUsageTotals;
42
+ }
43
+
44
+
45
+ /**
46
+ * @export
47
+ */
48
+ export const ChatFeatureUsageFeatureEnum = {
49
+ Chat: 'chat',
50
+ QuestionImport: 'question_import'
51
+ } as const;
52
+ export type ChatFeatureUsageFeatureEnum = typeof ChatFeatureUsageFeatureEnum[keyof typeof ChatFeatureUsageFeatureEnum];
53
+
54
+
55
+ /**
56
+ * Check if a given object implements the ChatFeatureUsage interface.
57
+ */
58
+ export function instanceOfChatFeatureUsage(value: object): value is ChatFeatureUsage {
59
+ if (!('feature' in value) || value['feature'] === undefined) return false;
60
+ if (!('usage' in value) || value['usage'] === undefined) return false;
61
+ return true;
62
+ }
63
+
64
+ export function ChatFeatureUsageFromJSON(json: any): ChatFeatureUsage {
65
+ return ChatFeatureUsageFromJSONTyped(json, false);
66
+ }
67
+
68
+ export function ChatFeatureUsageFromJSONTyped(json: any, ignoreDiscriminator: boolean): ChatFeatureUsage {
69
+ if (json == null) {
70
+ return json;
71
+ }
72
+ return {
73
+
74
+ 'feature': json['feature'],
75
+ 'usage': ChatUsageTotalsFromJSON(json['usage']),
76
+ };
77
+ }
78
+
79
+ export function ChatFeatureUsageToJSON(json: any): ChatFeatureUsage {
80
+ return ChatFeatureUsageToJSONTyped(json, false);
81
+ }
82
+
83
+ export function ChatFeatureUsageToJSONTyped(value?: ChatFeatureUsage | null, ignoreDiscriminator: boolean = false): any {
84
+ if (value == null) {
85
+ return value;
86
+ }
87
+
88
+ return {
89
+
90
+ 'feature': value['feature'],
91
+ 'usage': ChatUsageTotalsToJSON(value['usage']),
92
+ };
93
+ }
94
+
@@ -34,6 +34,13 @@ import {
34
34
  ChatUsageTotalsToJSON,
35
35
  ChatUsageTotalsToJSONTyped,
36
36
  } from './ChatUsageTotals';
37
+ import type { ChatFeatureUsage } from './ChatFeatureUsage';
38
+ import {
39
+ ChatFeatureUsageFromJSON,
40
+ ChatFeatureUsageFromJSONTyped,
41
+ ChatFeatureUsageToJSON,
42
+ ChatFeatureUsageToJSONTyped,
43
+ } from './ChatFeatureUsage';
37
44
 
38
45
  /**
39
46
  *
@@ -71,6 +78,12 @@ export interface GetChatUsage {
71
78
  * @memberof GetChatUsage
72
79
  */
73
80
  modelUsage: Array<ChatModelUsage>;
81
+ /**
82
+ *
83
+ * @type {Array<ChatFeatureUsage>}
84
+ * @memberof GetChatUsage
85
+ */
86
+ featureUsage: Array<ChatFeatureUsage>;
74
87
  }
75
88
 
76
89
  /**
@@ -82,6 +95,7 @@ export function instanceOfGetChatUsage(value: object): value is GetChatUsage {
82
95
  if (!('totals' in value) || value['totals'] === undefined) return false;
83
96
  if (!('daily' in value) || value['daily'] === undefined) return false;
84
97
  if (!('modelUsage' in value) || value['modelUsage'] === undefined) return false;
98
+ if (!('featureUsage' in value) || value['featureUsage'] === undefined) return false;
85
99
  return true;
86
100
  }
87
101
 
@@ -100,6 +114,7 @@ export function GetChatUsageFromJSONTyped(json: any, ignoreDiscriminator: boolea
100
114
  'totals': ChatUsageTotalsFromJSON(json['totals']),
101
115
  'daily': ((json['daily'] as Array<any>).map(ChatDailyUsageFromJSON)),
102
116
  'modelUsage': ((json['model_usage'] as Array<any>).map(ChatModelUsageFromJSON)),
117
+ 'featureUsage': ((json['feature_usage'] as Array<any>).map(ChatFeatureUsageFromJSON)),
103
118
  };
104
119
  }
105
120
 
@@ -119,6 +134,7 @@ export function GetChatUsageToJSONTyped(value?: GetChatUsage | null, ignoreDiscr
119
134
  'totals': ChatUsageTotalsToJSON(value['totals']),
120
135
  'daily': ((value['daily'] as Array<any>).map(ChatDailyUsageToJSON)),
121
136
  'model_usage': ((value['modelUsage'] as Array<any>).map(ChatModelUsageToJSON)),
137
+ 'feature_usage': ((value['featureUsage'] as Array<any>).map(ChatFeatureUsageToJSON)),
122
138
  };
123
139
  }
124
140
 
@@ -0,0 +1,111 @@
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 GetZapierMe
20
+ */
21
+ export interface GetZapierMe {
22
+ /**
23
+ *
24
+ * @type {string}
25
+ * @memberof GetZapierMe
26
+ */
27
+ integrationId: string;
28
+ /**
29
+ *
30
+ * @type {string}
31
+ * @memberof GetZapierMe
32
+ */
33
+ integrationName: string;
34
+ /**
35
+ *
36
+ * @type {string}
37
+ * @memberof GetZapierMe
38
+ */
39
+ portalId: string;
40
+ /**
41
+ *
42
+ * @type {string}
43
+ * @memberof GetZapierMe
44
+ */
45
+ portalName: string;
46
+ /**
47
+ *
48
+ * @type {string}
49
+ * @memberof GetZapierMe
50
+ */
51
+ portalSubdomain: string;
52
+ /**
53
+ *
54
+ * @type {Array<string>}
55
+ * @memberof GetZapierMe
56
+ */
57
+ permissionKeys: Array<string>;
58
+ }
59
+
60
+ /**
61
+ * Check if a given object implements the GetZapierMe interface.
62
+ */
63
+ export function instanceOfGetZapierMe(value: object): value is GetZapierMe {
64
+ if (!('integrationId' in value) || value['integrationId'] === undefined) return false;
65
+ if (!('integrationName' in value) || value['integrationName'] === undefined) return false;
66
+ if (!('portalId' in value) || value['portalId'] === undefined) return false;
67
+ if (!('portalName' in value) || value['portalName'] === undefined) return false;
68
+ if (!('portalSubdomain' in value) || value['portalSubdomain'] === undefined) return false;
69
+ if (!('permissionKeys' in value) || value['permissionKeys'] === undefined) return false;
70
+ return true;
71
+ }
72
+
73
+ export function GetZapierMeFromJSON(json: any): GetZapierMe {
74
+ return GetZapierMeFromJSONTyped(json, false);
75
+ }
76
+
77
+ export function GetZapierMeFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetZapierMe {
78
+ if (json == null) {
79
+ return json;
80
+ }
81
+ return {
82
+
83
+ 'integrationId': json['integration_id'],
84
+ 'integrationName': json['integration_name'],
85
+ 'portalId': json['portal_id'],
86
+ 'portalName': json['portal_name'],
87
+ 'portalSubdomain': json['portal_subdomain'],
88
+ 'permissionKeys': json['permission_keys'],
89
+ };
90
+ }
91
+
92
+ export function GetZapierMeToJSON(json: any): GetZapierMe {
93
+ return GetZapierMeToJSONTyped(json, false);
94
+ }
95
+
96
+ export function GetZapierMeToJSONTyped(value?: GetZapierMe | null, ignoreDiscriminator: boolean = false): any {
97
+ if (value == null) {
98
+ return value;
99
+ }
100
+
101
+ return {
102
+
103
+ 'integration_id': value['integrationId'],
104
+ 'integration_name': value['integrationName'],
105
+ 'portal_id': value['portalId'],
106
+ 'portal_name': value['portalName'],
107
+ 'portal_subdomain': value['portalSubdomain'],
108
+ 'permission_keys': value['permissionKeys'],
109
+ };
110
+ }
111
+