@instructure/athena-api-client 1.0.1 → 1.0.3

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 (50) hide show
  1. package/README.md +10 -0
  2. package/dist/apis/ChatsApi.d.ts +15 -0
  3. package/dist/apis/ChatsApi.js +44 -0
  4. package/dist/apis/LearningDaysApi.d.ts +33 -0
  5. package/dist/apis/LearningDaysApi.js +82 -0
  6. package/dist/apis/LearningMomentsApi.d.ts +33 -0
  7. package/dist/apis/LearningMomentsApi.js +76 -0
  8. package/dist/apis/MessagesApi.d.ts +45 -1
  9. package/dist/apis/MessagesApi.js +134 -0
  10. package/dist/apis/index.d.ts +2 -0
  11. package/dist/apis/index.js +2 -0
  12. package/dist/esm/apis/ChatsApi.d.ts +15 -0
  13. package/dist/esm/apis/ChatsApi.js +44 -0
  14. package/dist/esm/apis/LearningDaysApi.d.ts +33 -0
  15. package/dist/esm/apis/LearningDaysApi.js +78 -0
  16. package/dist/esm/apis/LearningMomentsApi.d.ts +33 -0
  17. package/dist/esm/apis/LearningMomentsApi.js +72 -0
  18. package/dist/esm/apis/MessagesApi.d.ts +45 -1
  19. package/dist/esm/apis/MessagesApi.js +135 -1
  20. package/dist/esm/apis/index.d.ts +2 -0
  21. package/dist/esm/apis/index.js +2 -0
  22. package/dist/esm/models/Account.d.ts +6 -0
  23. package/dist/esm/models/Account.js +2 -0
  24. package/dist/esm/models/LearningDaysResponse.d.ts +38 -0
  25. package/dist/esm/models/LearningDaysResponse.js +47 -0
  26. package/dist/esm/models/LearningMoment.d.ts +86 -0
  27. package/dist/esm/models/LearningMoment.js +73 -0
  28. package/dist/esm/models/Message.d.ts +6 -0
  29. package/dist/esm/models/Message.js +4 -0
  30. package/dist/esm/models/MessageCountResponse.d.ts +32 -0
  31. package/dist/esm/models/MessageCountResponse.js +43 -0
  32. package/dist/esm/models/PaginatedLearningMoments.d.ts +39 -0
  33. package/dist/esm/models/PaginatedLearningMoments.js +48 -0
  34. package/dist/esm/models/index.d.ts +4 -0
  35. package/dist/esm/models/index.js +4 -0
  36. package/dist/models/Account.d.ts +6 -0
  37. package/dist/models/Account.js +2 -0
  38. package/dist/models/LearningDaysResponse.d.ts +38 -0
  39. package/dist/models/LearningDaysResponse.js +54 -0
  40. package/dist/models/LearningMoment.d.ts +86 -0
  41. package/dist/models/LearningMoment.js +80 -0
  42. package/dist/models/Message.d.ts +6 -0
  43. package/dist/models/Message.js +4 -0
  44. package/dist/models/MessageCountResponse.d.ts +32 -0
  45. package/dist/models/MessageCountResponse.js +50 -0
  46. package/dist/models/PaginatedLearningMoments.d.ts +39 -0
  47. package/dist/models/PaginatedLearningMoments.js +55 -0
  48. package/dist/models/index.d.ts +4 -0
  49. package/dist/models/index.js +4 -0
  50. package/package.json +1 -1
@@ -189,6 +189,47 @@ export class ChatsApi extends runtime.BaseAPI {
189
189
  return yield response.value();
190
190
  });
191
191
  }
192
+ /**
193
+ * Updates the lastViewedAt timestamp for a chat belonging to the authenticated account user.
194
+ * Mark chat as viewed
195
+ */
196
+ markChatAsViewedRaw(requestParameters, initOverrides) {
197
+ return __awaiter(this, void 0, void 0, function* () {
198
+ if (requestParameters['xUserId'] == null) {
199
+ throw new runtime.RequiredError('xUserId', 'Required parameter "xUserId" was null or undefined when calling markChatAsViewed().');
200
+ }
201
+ if (requestParameters['chatId'] == null) {
202
+ throw new runtime.RequiredError('chatId', 'Required parameter "chatId" was null or undefined when calling markChatAsViewed().');
203
+ }
204
+ const queryParameters = {};
205
+ const headerParameters = {};
206
+ if (requestParameters['xUserId'] != null) {
207
+ headerParameters['X-User-Id'] = String(requestParameters['xUserId']);
208
+ }
209
+ if (this.configuration && this.configuration.apiKey) {
210
+ headerParameters["X-Auth-Token"] = yield this.configuration.apiKey("X-Auth-Token"); // AuthToken authentication
211
+ }
212
+ let urlPath = `/api/v1/chats/{chatId}/viewed`;
213
+ urlPath = urlPath.replace(`{${"chatId"}}`, encodeURIComponent(String(requestParameters['chatId'])));
214
+ const response = yield this.request({
215
+ path: urlPath,
216
+ method: 'PATCH',
217
+ headers: headerParameters,
218
+ query: queryParameters,
219
+ }, initOverrides);
220
+ return new runtime.JSONApiResponse(response, (jsonValue) => ChatFromJSON(jsonValue));
221
+ });
222
+ }
223
+ /**
224
+ * Updates the lastViewedAt timestamp for a chat belonging to the authenticated account user.
225
+ * Mark chat as viewed
226
+ */
227
+ markChatAsViewed(requestParameters, initOverrides) {
228
+ return __awaiter(this, void 0, void 0, function* () {
229
+ const response = yield this.markChatAsViewedRaw(requestParameters, initOverrides);
230
+ return yield response.value();
231
+ });
232
+ }
192
233
  /**
193
234
  * Sends a message to a chat conversation with an AI assistant. The client must provide a chatId (UUID v4). If the chatId doesn\'t exist, a new chat will be created with that ID. If it exists and belongs to the user, the conversation continues. The response is streamed in real-time.
194
235
  * Send a message to a chat
@@ -204,6 +245,9 @@ export class ChatsApi extends runtime.BaseAPI {
204
245
  const queryParameters = {};
205
246
  const headerParameters = {};
206
247
  headerParameters['Content-Type'] = 'application/json';
248
+ if (requestParameters['xUserTimezone'] != null) {
249
+ headerParameters['X-User-Timezone'] = String(requestParameters['xUserTimezone']);
250
+ }
207
251
  if (requestParameters['xCanvasToken'] != null) {
208
252
  headerParameters['X-Canvas-Token'] = String(requestParameters['xCanvasToken']);
209
253
  }
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Athena API
3
+ * REST API for the Athena system
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import * as runtime from '../runtime';
13
+ import type { LearningDaysResponse } from '../models/index';
14
+ export interface GetLearningDaysRequest {
15
+ xUserId: string;
16
+ startDate: Date;
17
+ endDate: Date;
18
+ }
19
+ /**
20
+ *
21
+ */
22
+ export declare class LearningDaysApi extends runtime.BaseAPI {
23
+ /**
24
+ * Returns distinct dates within the given range on which the user had at least one learning moment, plus the date of their most recent learning moment overall.
25
+ * Get learning days in range
26
+ */
27
+ getLearningDaysRaw(requestParameters: GetLearningDaysRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<LearningDaysResponse>>;
28
+ /**
29
+ * Returns distinct dates within the given range on which the user had at least one learning moment, plus the date of their most recent learning moment overall.
30
+ * Get learning days in range
31
+ */
32
+ getLearningDays(requestParameters: GetLearningDaysRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<LearningDaysResponse>;
33
+ }
@@ -0,0 +1,78 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Athena API
5
+ * REST API for the Athena system
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
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
+ return new (P || (P = Promise))(function (resolve, reject) {
17
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
21
+ });
22
+ };
23
+ import * as runtime from '../runtime';
24
+ import { LearningDaysResponseFromJSON, } from '../models/index';
25
+ /**
26
+ *
27
+ */
28
+ export class LearningDaysApi extends runtime.BaseAPI {
29
+ /**
30
+ * Returns distinct dates within the given range on which the user had at least one learning moment, plus the date of their most recent learning moment overall.
31
+ * Get learning days in range
32
+ */
33
+ getLearningDaysRaw(requestParameters, initOverrides) {
34
+ return __awaiter(this, void 0, void 0, function* () {
35
+ if (requestParameters['xUserId'] == null) {
36
+ throw new runtime.RequiredError('xUserId', 'Required parameter "xUserId" was null or undefined when calling getLearningDays().');
37
+ }
38
+ if (requestParameters['startDate'] == null) {
39
+ throw new runtime.RequiredError('startDate', 'Required parameter "startDate" was null or undefined when calling getLearningDays().');
40
+ }
41
+ if (requestParameters['endDate'] == null) {
42
+ throw new runtime.RequiredError('endDate', 'Required parameter "endDate" was null or undefined when calling getLearningDays().');
43
+ }
44
+ const queryParameters = {};
45
+ if (requestParameters['startDate'] != null) {
46
+ queryParameters['startDate'] = requestParameters['startDate'].toISOString().substring(0, 10);
47
+ }
48
+ if (requestParameters['endDate'] != null) {
49
+ queryParameters['endDate'] = requestParameters['endDate'].toISOString().substring(0, 10);
50
+ }
51
+ const headerParameters = {};
52
+ if (requestParameters['xUserId'] != null) {
53
+ headerParameters['X-User-Id'] = String(requestParameters['xUserId']);
54
+ }
55
+ if (this.configuration && this.configuration.apiKey) {
56
+ headerParameters["X-Auth-Token"] = yield this.configuration.apiKey("X-Auth-Token"); // AuthToken authentication
57
+ }
58
+ let urlPath = `/api/v1/learning-days`;
59
+ const response = yield this.request({
60
+ path: urlPath,
61
+ method: 'GET',
62
+ headers: headerParameters,
63
+ query: queryParameters,
64
+ }, initOverrides);
65
+ return new runtime.JSONApiResponse(response, (jsonValue) => LearningDaysResponseFromJSON(jsonValue));
66
+ });
67
+ }
68
+ /**
69
+ * Returns distinct dates within the given range on which the user had at least one learning moment, plus the date of their most recent learning moment overall.
70
+ * Get learning days in range
71
+ */
72
+ getLearningDays(requestParameters, initOverrides) {
73
+ return __awaiter(this, void 0, void 0, function* () {
74
+ const response = yield this.getLearningDaysRaw(requestParameters, initOverrides);
75
+ return yield response.value();
76
+ });
77
+ }
78
+ }
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Athena API
3
+ * REST API for the Athena system
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import * as runtime from '../runtime';
13
+ import type { PaginatedLearningMoments } from '../models/index';
14
+ export interface ListLearningMomentsRequest {
15
+ xUserId: string;
16
+ limit?: number;
17
+ cursor?: string;
18
+ }
19
+ /**
20
+ *
21
+ */
22
+ export declare class LearningMomentsApi extends runtime.BaseAPI {
23
+ /**
24
+ * Returns paginated learning moments belonging to the authenticated account user, ordered by creation date (newest first).
25
+ * List learning moments
26
+ */
27
+ listLearningMomentsRaw(requestParameters: ListLearningMomentsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PaginatedLearningMoments>>;
28
+ /**
29
+ * Returns paginated learning moments belonging to the authenticated account user, ordered by creation date (newest first).
30
+ * List learning moments
31
+ */
32
+ listLearningMoments(requestParameters: ListLearningMomentsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PaginatedLearningMoments>;
33
+ }
@@ -0,0 +1,72 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Athena API
5
+ * REST API for the Athena system
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
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
+ return new (P || (P = Promise))(function (resolve, reject) {
17
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
21
+ });
22
+ };
23
+ import * as runtime from '../runtime';
24
+ import { PaginatedLearningMomentsFromJSON, } from '../models/index';
25
+ /**
26
+ *
27
+ */
28
+ export class LearningMomentsApi extends runtime.BaseAPI {
29
+ /**
30
+ * Returns paginated learning moments belonging to the authenticated account user, ordered by creation date (newest first).
31
+ * List learning moments
32
+ */
33
+ listLearningMomentsRaw(requestParameters, initOverrides) {
34
+ return __awaiter(this, void 0, void 0, function* () {
35
+ if (requestParameters['xUserId'] == null) {
36
+ throw new runtime.RequiredError('xUserId', 'Required parameter "xUserId" was null or undefined when calling listLearningMoments().');
37
+ }
38
+ const queryParameters = {};
39
+ if (requestParameters['limit'] != null) {
40
+ queryParameters['limit'] = requestParameters['limit'];
41
+ }
42
+ if (requestParameters['cursor'] != null) {
43
+ queryParameters['cursor'] = requestParameters['cursor'];
44
+ }
45
+ const headerParameters = {};
46
+ if (requestParameters['xUserId'] != null) {
47
+ headerParameters['X-User-Id'] = String(requestParameters['xUserId']);
48
+ }
49
+ if (this.configuration && this.configuration.apiKey) {
50
+ headerParameters["X-Auth-Token"] = yield this.configuration.apiKey("X-Auth-Token"); // AuthToken authentication
51
+ }
52
+ let urlPath = `/api/v1/learning-moments`;
53
+ const response = yield this.request({
54
+ path: urlPath,
55
+ method: 'GET',
56
+ headers: headerParameters,
57
+ query: queryParameters,
58
+ }, initOverrides);
59
+ return new runtime.JSONApiResponse(response, (jsonValue) => PaginatedLearningMomentsFromJSON(jsonValue));
60
+ });
61
+ }
62
+ /**
63
+ * Returns paginated learning moments belonging to the authenticated account user, ordered by creation date (newest first).
64
+ * List learning moments
65
+ */
66
+ listLearningMoments(requestParameters, initOverrides) {
67
+ return __awaiter(this, void 0, void 0, function* () {
68
+ const response = yield this.listLearningMomentsRaw(requestParameters, initOverrides);
69
+ return yield response.value();
70
+ });
71
+ }
72
+ }
@@ -10,17 +10,51 @@
10
10
  * Do not edit the class manually.
11
11
  */
12
12
  import * as runtime from '../runtime';
13
- import type { PaginatedMessages } from '../models/index';
13
+ import type { Message, MessageCountResponse, PaginatedMessages } from '../models/index';
14
+ export interface DeleteMessagesRequest {
15
+ xUserId: string;
16
+ chatId: string;
17
+ since: Date;
18
+ }
19
+ export interface GetChatMessageRequest {
20
+ xUserId: string;
21
+ chatId: string;
22
+ messageId: string;
23
+ }
14
24
  export interface GetChatMessagesRequest {
15
25
  xUserId: string;
16
26
  chatId: string;
17
27
  limit?: number;
18
28
  cursor?: string;
19
29
  }
30
+ export interface GetMessageCountRequest {
31
+ xUserId: string;
32
+ hours: number;
33
+ }
20
34
  /**
21
35
  *
22
36
  */
23
37
  export declare class MessagesApi extends runtime.BaseAPI {
38
+ /**
39
+ * Deletes all messages in a chat at or after the given timestamp.
40
+ * Delete messages from timestamp
41
+ */
42
+ deleteMessagesRaw(requestParameters: DeleteMessagesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>>;
43
+ /**
44
+ * Deletes all messages in a chat at or after the given timestamp.
45
+ * Delete messages from timestamp
46
+ */
47
+ deleteMessages(requestParameters: DeleteMessagesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void>;
48
+ /**
49
+ * Returns a single message belonging to the specified chat.
50
+ * Get a chat message
51
+ */
52
+ getChatMessageRaw(requestParameters: GetChatMessageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Message>>;
53
+ /**
54
+ * Returns a single message belonging to the specified chat.
55
+ * Get a chat message
56
+ */
57
+ getChatMessage(requestParameters: GetChatMessageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Message>;
24
58
  /**
25
59
  * Returns paginated messages belonging to the specified chat, ordered by creation date (newest first).
26
60
  * List chat messages
@@ -31,4 +65,14 @@ export declare class MessagesApi extends runtime.BaseAPI {
31
65
  * List chat messages
32
66
  */
33
67
  getChatMessages(requestParameters: GetChatMessagesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PaginatedMessages>;
68
+ /**
69
+ * Returns the number of user-role messages sent by the authenticated account user within the given time window.
70
+ * Count user messages
71
+ */
72
+ getMessageCountRaw(requestParameters: GetMessageCountRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<MessageCountResponse>>;
73
+ /**
74
+ * Returns the number of user-role messages sent by the authenticated account user within the given time window.
75
+ * Count user messages
76
+ */
77
+ getMessageCount(requestParameters: GetMessageCountRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<MessageCountResponse>;
34
78
  }
@@ -21,11 +21,102 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
21
21
  });
22
22
  };
23
23
  import * as runtime from '../runtime';
24
- import { PaginatedMessagesFromJSON, } from '../models/index';
24
+ import { MessageFromJSON, MessageCountResponseFromJSON, PaginatedMessagesFromJSON, } from '../models/index';
25
25
  /**
26
26
  *
27
27
  */
28
28
  export class MessagesApi extends runtime.BaseAPI {
29
+ /**
30
+ * Deletes all messages in a chat at or after the given timestamp.
31
+ * Delete messages from timestamp
32
+ */
33
+ deleteMessagesRaw(requestParameters, initOverrides) {
34
+ return __awaiter(this, void 0, void 0, function* () {
35
+ if (requestParameters['xUserId'] == null) {
36
+ throw new runtime.RequiredError('xUserId', 'Required parameter "xUserId" was null or undefined when calling deleteMessages().');
37
+ }
38
+ if (requestParameters['chatId'] == null) {
39
+ throw new runtime.RequiredError('chatId', 'Required parameter "chatId" was null or undefined when calling deleteMessages().');
40
+ }
41
+ if (requestParameters['since'] == null) {
42
+ throw new runtime.RequiredError('since', 'Required parameter "since" was null or undefined when calling deleteMessages().');
43
+ }
44
+ const queryParameters = {};
45
+ if (requestParameters['since'] != null) {
46
+ queryParameters['since'] = requestParameters['since'].toISOString();
47
+ }
48
+ const headerParameters = {};
49
+ if (requestParameters['xUserId'] != null) {
50
+ headerParameters['X-User-Id'] = String(requestParameters['xUserId']);
51
+ }
52
+ if (this.configuration && this.configuration.apiKey) {
53
+ headerParameters["X-Auth-Token"] = yield this.configuration.apiKey("X-Auth-Token"); // AuthToken authentication
54
+ }
55
+ let urlPath = `/api/v1/chats/{chatId}/messages`;
56
+ urlPath = urlPath.replace(`{${"chatId"}}`, encodeURIComponent(String(requestParameters['chatId'])));
57
+ const response = yield this.request({
58
+ path: urlPath,
59
+ method: 'DELETE',
60
+ headers: headerParameters,
61
+ query: queryParameters,
62
+ }, initOverrides);
63
+ return new runtime.VoidApiResponse(response);
64
+ });
65
+ }
66
+ /**
67
+ * Deletes all messages in a chat at or after the given timestamp.
68
+ * Delete messages from timestamp
69
+ */
70
+ deleteMessages(requestParameters, initOverrides) {
71
+ return __awaiter(this, void 0, void 0, function* () {
72
+ yield this.deleteMessagesRaw(requestParameters, initOverrides);
73
+ });
74
+ }
75
+ /**
76
+ * Returns a single message belonging to the specified chat.
77
+ * Get a chat message
78
+ */
79
+ getChatMessageRaw(requestParameters, initOverrides) {
80
+ return __awaiter(this, void 0, void 0, function* () {
81
+ if (requestParameters['xUserId'] == null) {
82
+ throw new runtime.RequiredError('xUserId', 'Required parameter "xUserId" was null or undefined when calling getChatMessage().');
83
+ }
84
+ if (requestParameters['chatId'] == null) {
85
+ throw new runtime.RequiredError('chatId', 'Required parameter "chatId" was null or undefined when calling getChatMessage().');
86
+ }
87
+ if (requestParameters['messageId'] == null) {
88
+ throw new runtime.RequiredError('messageId', 'Required parameter "messageId" was null or undefined when calling getChatMessage().');
89
+ }
90
+ const queryParameters = {};
91
+ const headerParameters = {};
92
+ if (requestParameters['xUserId'] != null) {
93
+ headerParameters['X-User-Id'] = String(requestParameters['xUserId']);
94
+ }
95
+ if (this.configuration && this.configuration.apiKey) {
96
+ headerParameters["X-Auth-Token"] = yield this.configuration.apiKey("X-Auth-Token"); // AuthToken authentication
97
+ }
98
+ let urlPath = `/api/v1/chats/{chatId}/messages/{messageId}`;
99
+ urlPath = urlPath.replace(`{${"chatId"}}`, encodeURIComponent(String(requestParameters['chatId'])));
100
+ urlPath = urlPath.replace(`{${"messageId"}}`, encodeURIComponent(String(requestParameters['messageId'])));
101
+ const response = yield this.request({
102
+ path: urlPath,
103
+ method: 'GET',
104
+ headers: headerParameters,
105
+ query: queryParameters,
106
+ }, initOverrides);
107
+ return new runtime.JSONApiResponse(response, (jsonValue) => MessageFromJSON(jsonValue));
108
+ });
109
+ }
110
+ /**
111
+ * Returns a single message belonging to the specified chat.
112
+ * Get a chat message
113
+ */
114
+ getChatMessage(requestParameters, initOverrides) {
115
+ return __awaiter(this, void 0, void 0, function* () {
116
+ const response = yield this.getChatMessageRaw(requestParameters, initOverrides);
117
+ return yield response.value();
118
+ });
119
+ }
29
120
  /**
30
121
  * Returns paginated messages belonging to the specified chat, ordered by creation date (newest first).
31
122
  * List chat messages
@@ -73,4 +164,47 @@ export class MessagesApi extends runtime.BaseAPI {
73
164
  return yield response.value();
74
165
  });
75
166
  }
167
+ /**
168
+ * Returns the number of user-role messages sent by the authenticated account user within the given time window.
169
+ * Count user messages
170
+ */
171
+ getMessageCountRaw(requestParameters, initOverrides) {
172
+ return __awaiter(this, void 0, void 0, function* () {
173
+ if (requestParameters['xUserId'] == null) {
174
+ throw new runtime.RequiredError('xUserId', 'Required parameter "xUserId" was null or undefined when calling getMessageCount().');
175
+ }
176
+ if (requestParameters['hours'] == null) {
177
+ throw new runtime.RequiredError('hours', 'Required parameter "hours" was null or undefined when calling getMessageCount().');
178
+ }
179
+ const queryParameters = {};
180
+ if (requestParameters['hours'] != null) {
181
+ queryParameters['hours'] = requestParameters['hours'];
182
+ }
183
+ const headerParameters = {};
184
+ if (requestParameters['xUserId'] != null) {
185
+ headerParameters['X-User-Id'] = String(requestParameters['xUserId']);
186
+ }
187
+ if (this.configuration && this.configuration.apiKey) {
188
+ headerParameters["X-Auth-Token"] = yield this.configuration.apiKey("X-Auth-Token"); // AuthToken authentication
189
+ }
190
+ let urlPath = `/api/v1/messages/count`;
191
+ const response = yield this.request({
192
+ path: urlPath,
193
+ method: 'GET',
194
+ headers: headerParameters,
195
+ query: queryParameters,
196
+ }, initOverrides);
197
+ return new runtime.JSONApiResponse(response, (jsonValue) => MessageCountResponseFromJSON(jsonValue));
198
+ });
199
+ }
200
+ /**
201
+ * Returns the number of user-role messages sent by the authenticated account user within the given time window.
202
+ * Count user messages
203
+ */
204
+ getMessageCount(requestParameters, initOverrides) {
205
+ return __awaiter(this, void 0, void 0, function* () {
206
+ const response = yield this.getMessageCountRaw(requestParameters, initOverrides);
207
+ return yield response.value();
208
+ });
209
+ }
76
210
  }
@@ -1,6 +1,8 @@
1
1
  export * from './AccountsApi';
2
2
  export * from './ChatsApi';
3
3
  export * from './HealthApi';
4
+ export * from './LearningDaysApi';
5
+ export * from './LearningMomentsApi';
4
6
  export * from './MessagesApi';
5
7
  export * from './ServiceTokensApi';
6
8
  export * from './TagsApi';
@@ -3,6 +3,8 @@
3
3
  export * from './AccountsApi';
4
4
  export * from './ChatsApi';
5
5
  export * from './HealthApi';
6
+ export * from './LearningDaysApi';
7
+ export * from './LearningMomentsApi';
6
8
  export * from './MessagesApi';
7
9
  export * from './ServiceTokensApi';
8
10
  export * from './TagsApi';
@@ -27,6 +27,12 @@ export interface Account {
27
27
  * @memberof Account
28
28
  */
29
29
  name: string;
30
+ /**
31
+ * ID of the account's assigned plan
32
+ * @type {string}
33
+ * @memberof Account
34
+ */
35
+ planId?: string | null;
30
36
  /**
31
37
  * Creation timestamp
32
38
  * @type {Date}
@@ -35,6 +35,7 @@ export function AccountFromJSONTyped(json, ignoreDiscriminator) {
35
35
  return {
36
36
  'id': json['id'],
37
37
  'name': json['name'],
38
+ 'planId': json['planId'] == null ? undefined : json['planId'],
38
39
  'createdAt': (new Date(json['createdAt'])),
39
40
  'updatedAt': (new Date(json['updatedAt'])),
40
41
  };
@@ -49,6 +50,7 @@ export function AccountToJSONTyped(value, ignoreDiscriminator = false) {
49
50
  return {
50
51
  'id': value['id'],
51
52
  'name': value['name'],
53
+ 'planId': value['planId'],
52
54
  'createdAt': value['createdAt'].toISOString(),
53
55
  'updatedAt': value['updatedAt'].toISOString(),
54
56
  };
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Athena API
3
+ * REST API for the Athena system
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ *
14
+ * @export
15
+ * @interface LearningDaysResponse
16
+ */
17
+ export interface LearningDaysResponse {
18
+ /**
19
+ *
20
+ * @type {Date}
21
+ * @memberof LearningDaysResponse
22
+ */
23
+ latestMomentDate: Date | null;
24
+ /**
25
+ *
26
+ * @type {Array<Date>}
27
+ * @memberof LearningDaysResponse
28
+ */
29
+ days: Array<Date>;
30
+ }
31
+ /**
32
+ * Check if a given object implements the LearningDaysResponse interface.
33
+ */
34
+ export declare function instanceOfLearningDaysResponse(value: object): value is LearningDaysResponse;
35
+ export declare function LearningDaysResponseFromJSON(json: any): LearningDaysResponse;
36
+ export declare function LearningDaysResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): LearningDaysResponse;
37
+ export declare function LearningDaysResponseToJSON(json: any): LearningDaysResponse;
38
+ export declare function LearningDaysResponseToJSONTyped(value?: LearningDaysResponse | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,47 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Athena API
5
+ * REST API for the Athena system
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
+ * Check if a given object implements the LearningDaysResponse interface.
16
+ */
17
+ export function instanceOfLearningDaysResponse(value) {
18
+ if (!('latestMomentDate' in value) || value['latestMomentDate'] === undefined)
19
+ return false;
20
+ if (!('days' in value) || value['days'] === undefined)
21
+ return false;
22
+ return true;
23
+ }
24
+ export function LearningDaysResponseFromJSON(json) {
25
+ return LearningDaysResponseFromJSONTyped(json, false);
26
+ }
27
+ export function LearningDaysResponseFromJSONTyped(json, ignoreDiscriminator) {
28
+ if (json == null) {
29
+ return json;
30
+ }
31
+ return {
32
+ 'latestMomentDate': (json['latestMomentDate'] == null ? null : new Date(json['latestMomentDate'])),
33
+ 'days': json['days'],
34
+ };
35
+ }
36
+ export function LearningDaysResponseToJSON(json) {
37
+ return LearningDaysResponseToJSONTyped(json, false);
38
+ }
39
+ export function LearningDaysResponseToJSONTyped(value, ignoreDiscriminator = false) {
40
+ if (value == null) {
41
+ return value;
42
+ }
43
+ return {
44
+ 'latestMomentDate': value['latestMomentDate'] == null ? value['latestMomentDate'] : value['latestMomentDate'].toISOString().substring(0, 10),
45
+ 'days': value['days'],
46
+ };
47
+ }