@iblai/iblai-api 3.50.0-ai-plus → 3.50.1-ai

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 (96) hide show
  1. package/dist/index.cjs.js +404 -1797
  2. package/dist/index.cjs.js.map +1 -1
  3. package/dist/index.esm.js +405 -1796
  4. package/dist/index.esm.js.map +1 -1
  5. package/dist/index.umd.js +404 -1797
  6. package/dist/index.umd.js.map +1 -1
  7. package/dist/types/index.d.ts +2 -40
  8. package/dist/types/models/PaginatedAssertionsResponse.d.ts +21 -0
  9. package/dist/types/models/{Provider637Enum.d.ts → ProviderEnum.d.ts} +1 -1
  10. package/dist/types/models/Voice.d.ts +2 -2
  11. package/dist/types/services/CredentialsService.d.ts +7 -6
  12. package/package.json +1 -1
  13. package/src/core/OpenAPI.ts +1 -1
  14. package/src/index.ts +2 -40
  15. package/src/models/PaginatedAssertionsResponse.ts +26 -0
  16. package/src/models/{Provider637Enum.ts → ProviderEnum.ts} +1 -1
  17. package/src/models/Voice.ts +2 -2
  18. package/src/services/CredentialsService.ts +7 -6
  19. package/dist/types/models/Bot.d.ts +0 -15
  20. package/dist/types/models/BotCommand.d.ts +0 -6
  21. package/dist/types/models/BotCreate.d.ts +0 -12
  22. package/dist/types/models/DataSet.d.ts +0 -21
  23. package/dist/types/models/DataSetCreate.d.ts +0 -12
  24. package/dist/types/models/DataSetStatusEnum.d.ts +0 -12
  25. package/dist/types/models/DiscordConfig.d.ts +0 -7
  26. package/dist/types/models/DiscordUserConfig.d.ts +0 -10
  27. package/dist/types/models/DiscordWebhook.d.ts +0 -6
  28. package/dist/types/models/PaginatedDataSetList.d.ts +0 -7
  29. package/dist/types/models/PaginatedTrainingList.d.ts +0 -7
  30. package/dist/types/models/PatchedBotCommand.d.ts +0 -6
  31. package/dist/types/models/PatchedBotCreate.d.ts +0 -12
  32. package/dist/types/models/PatchedDataSet.d.ts +0 -21
  33. package/dist/types/models/PatchedDiscordConfig.d.ts +0 -7
  34. package/dist/types/models/PatchedDiscordUserConfig.d.ts +0 -10
  35. package/dist/types/models/PatchedSlackConfig.d.ts +0 -8
  36. package/dist/types/models/PatchedSlackUserConfig.d.ts +0 -17
  37. package/dist/types/models/PatchedTeamsConfig.d.ts +0 -7
  38. package/dist/types/models/PatchedTrainingCreate.d.ts +0 -31
  39. package/dist/types/models/PatchedWebexConfig.d.ts +0 -10
  40. package/dist/types/models/PatchedWhatsappConfig.d.ts +0 -11
  41. package/dist/types/models/PatchedWhatsappUserConfig.d.ts +0 -10
  42. package/dist/types/models/Provider05cEnum.d.ts +0 -14
  43. package/dist/types/models/Provider63aEnum.d.ts +0 -6
  44. package/dist/types/models/SlackConfig.d.ts +0 -8
  45. package/dist/types/models/SlackUserConfig.d.ts +0 -17
  46. package/dist/types/models/SlackWebhook.d.ts +0 -6
  47. package/dist/types/models/TeamsConfig.d.ts +0 -7
  48. package/dist/types/models/TeamsWebhook.d.ts +0 -17
  49. package/dist/types/models/Training.d.ts +0 -41
  50. package/dist/types/models/TrainingCreate.d.ts +0 -31
  51. package/dist/types/models/WebexConfig.d.ts +0 -10
  52. package/dist/types/models/WebexWebhook.d.ts +0 -4
  53. package/dist/types/models/WhatAppWebHook.d.ts +0 -3
  54. package/dist/types/models/WhatsappConfig.d.ts +0 -11
  55. package/dist/types/models/WhatsappUserConfig.d.ts +0 -10
  56. package/dist/types/services/AiBotService.d.ts +0 -642
  57. package/dist/types/services/AiFinetuningService.d.ts +0 -232
  58. package/src/models/Bot.ts +0 -20
  59. package/src/models/BotCommand.ts +0 -11
  60. package/src/models/BotCreate.ts +0 -17
  61. package/src/models/DataSet.ts +0 -26
  62. package/src/models/DataSetCreate.ts +0 -17
  63. package/src/models/DataSetStatusEnum.ts +0 -16
  64. package/src/models/DiscordConfig.ts +0 -12
  65. package/src/models/DiscordUserConfig.ts +0 -15
  66. package/src/models/DiscordWebhook.ts +0 -11
  67. package/src/models/PaginatedDataSetList.ts +0 -12
  68. package/src/models/PaginatedTrainingList.ts +0 -12
  69. package/src/models/PatchedBotCommand.ts +0 -11
  70. package/src/models/PatchedBotCreate.ts +0 -17
  71. package/src/models/PatchedDataSet.ts +0 -26
  72. package/src/models/PatchedDiscordConfig.ts +0 -12
  73. package/src/models/PatchedDiscordUserConfig.ts +0 -15
  74. package/src/models/PatchedSlackConfig.ts +0 -13
  75. package/src/models/PatchedSlackUserConfig.ts +0 -22
  76. package/src/models/PatchedTeamsConfig.ts +0 -12
  77. package/src/models/PatchedTrainingCreate.ts +0 -36
  78. package/src/models/PatchedWebexConfig.ts +0 -15
  79. package/src/models/PatchedWhatsappConfig.ts +0 -16
  80. package/src/models/PatchedWhatsappUserConfig.ts +0 -15
  81. package/src/models/Provider05cEnum.ts +0 -18
  82. package/src/models/Provider63aEnum.ts +0 -10
  83. package/src/models/SlackConfig.ts +0 -13
  84. package/src/models/SlackUserConfig.ts +0 -22
  85. package/src/models/SlackWebhook.ts +0 -11
  86. package/src/models/TeamsConfig.ts +0 -12
  87. package/src/models/TeamsWebhook.ts +0 -22
  88. package/src/models/Training.ts +0 -46
  89. package/src/models/TrainingCreate.ts +0 -36
  90. package/src/models/WebexConfig.ts +0 -15
  91. package/src/models/WebexWebhook.ts +0 -9
  92. package/src/models/WhatAppWebHook.ts +0 -8
  93. package/src/models/WhatsappConfig.ts +0 -16
  94. package/src/models/WhatsappUserConfig.ts +0 -15
  95. package/src/services/AiBotService.ts +0 -1330
  96. package/src/services/AiFinetuningService.ts +0 -472
package/dist/index.cjs.js CHANGED
@@ -110,7 +110,7 @@ class CancelablePromise {
110
110
 
111
111
  const OpenAPI = {
112
112
  BASE: 'https://base.manager.iblai.app',
113
- VERSION: '3.50.0-ai-plus',
113
+ VERSION: '3.50.1-ai',
114
114
  WITH_CREDENTIALS: false,
115
115
  CREDENTIALS: 'include',
116
116
  TOKEN: undefined,
@@ -245,24 +245,6 @@ exports.CourseCreationTaskStatusEnum = void 0;
245
245
  CourseCreationTaskStatusEnum["IN_PROGRESS"] = "In Progress";
246
246
  })(exports.CourseCreationTaskStatusEnum || (exports.CourseCreationTaskStatusEnum = {}));
247
247
 
248
- /* generated using openapi-typescript-codegen -- do not edit */
249
- /* istanbul ignore file */
250
- /* tslint:disable */
251
- /* eslint-disable */
252
- /**
253
- * * `pending` - Pending
254
- * * `processing` - Processing
255
- * * `completed` - Completed
256
- * * `failed` - Failed
257
- */
258
- exports.DataSetStatusEnum = void 0;
259
- (function (DataSetStatusEnum) {
260
- DataSetStatusEnum["PENDING"] = "pending";
261
- DataSetStatusEnum["PROCESSING"] = "processing";
262
- DataSetStatusEnum["COMPLETED"] = "completed";
263
- DataSetStatusEnum["FAILED"] = "failed";
264
- })(exports.DataSetStatusEnum || (exports.DataSetStatusEnum = {}));
265
-
266
248
  /* generated using openapi-typescript-codegen -- do not edit */
267
249
  /* istanbul ignore file */
268
250
  /* tslint:disable */
@@ -543,26 +525,6 @@ exports.PromptVisibilityEnum = void 0;
543
525
  PromptVisibilityEnum["VIEWABLE_BY_ANYONE"] = "viewable_by_anyone";
544
526
  })(exports.PromptVisibilityEnum || (exports.PromptVisibilityEnum = {}));
545
527
 
546
- /* generated using openapi-typescript-codegen -- do not edit */
547
- /* istanbul ignore file */
548
- /* tslint:disable */
549
- /* eslint-disable */
550
- /**
551
- * * `webex` - Webex
552
- * * `slack` - Slack
553
- * * `whatsapp` - Whatsapp
554
- * * `discord` - Discord
555
- * * `teams` - Teams
556
- */
557
- exports.Provider05cEnum = void 0;
558
- (function (Provider05cEnum) {
559
- Provider05cEnum["WEBEX"] = "webex";
560
- Provider05cEnum["SLACK"] = "slack";
561
- Provider05cEnum["WHATSAPP"] = "whatsapp";
562
- Provider05cEnum["DISCORD"] = "discord";
563
- Provider05cEnum["TEAMS"] = "teams";
564
- })(exports.Provider05cEnum || (exports.Provider05cEnum = {}));
565
-
566
528
  /* generated using openapi-typescript-codegen -- do not edit */
567
529
  /* istanbul ignore file */
568
530
  /* tslint:disable */
@@ -572,24 +534,12 @@ exports.Provider05cEnum = void 0;
572
534
  * * `google` - Google
573
535
  * * `elevenlabs` - Elevenlabs
574
536
  */
575
- exports.Provider637Enum = void 0;
576
- (function (Provider637Enum) {
577
- Provider637Enum["OPENAI"] = "openai";
578
- Provider637Enum["GOOGLE"] = "google";
579
- Provider637Enum["ELEVENLABS"] = "elevenlabs";
580
- })(exports.Provider637Enum || (exports.Provider637Enum = {}));
581
-
582
- /* generated using openapi-typescript-codegen -- do not edit */
583
- /* istanbul ignore file */
584
- /* tslint:disable */
585
- /* eslint-disable */
586
- /**
587
- * * `openai` - Openai
588
- */
589
- exports.Provider63aEnum = void 0;
590
- (function (Provider63aEnum) {
591
- Provider63aEnum["OPENAI"] = "openai";
592
- })(exports.Provider63aEnum || (exports.Provider63aEnum = {}));
537
+ exports.ProviderEnum = void 0;
538
+ (function (ProviderEnum) {
539
+ ProviderEnum["OPENAI"] = "openai";
540
+ ProviderEnum["GOOGLE"] = "google";
541
+ ProviderEnum["ELEVENLABS"] = "elevenlabs";
542
+ })(exports.ProviderEnum || (exports.ProviderEnum = {}));
593
543
 
594
544
  /* generated using openapi-typescript-codegen -- do not edit */
595
545
  /* istanbul ignore file */
@@ -5227,1900 +5177,559 @@ class AiAnalyticsService {
5227
5177
  /**
5228
5178
  * Evaluates performance index for platform, per course, per user and per user-per course
5229
5179
  *
5230
- * Query Params
5231
- * course_id <optional>
5232
- * learner_id <optional>
5233
- * @returns Value
5234
- * @throws ApiError
5235
- */
5236
- static aiAnalyticsPerlearnerOrgsUsersCoursesOverviewPerformanceIndexRetrieve({
5237
- courseId,
5238
- org,
5239
- userId,
5240
- departmentId,
5241
- endDate,
5242
- format = 'json',
5243
- includeMainPlatform = true,
5244
- startDate
5245
- }) {
5246
- return request(OpenAPI, {
5247
- method: 'GET',
5248
- url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/courses/{course_id}/overview/performance-index',
5249
- path: {
5250
- 'course_id': courseId,
5251
- 'org': org,
5252
- 'user_id': userId
5253
- },
5254
- query: {
5255
- 'department_id': departmentId,
5256
- 'end_date': endDate,
5257
- 'format': format,
5258
- 'include_main_platform': includeMainPlatform,
5259
- 'start_date': startDate
5260
- }
5261
- });
5262
- }
5263
- /**
5264
- * Time spent within a course in secs on a per-day basis
5265
- *
5266
- * Kwargs
5267
- * 1. course_id e.g course-v1:Org+Course4+Run
5268
- * 2. user_id e.g developer@ibleducation.com or dev123 (username|email)
5269
- * Query Params
5270
- * 3. start_date e.g 2020-10-01
5271
- * 4. end_date e.g 2020-10-10
5272
- *
5273
- * Default result when no query param is added is last_7_days (today inclusive)
5274
- * @returns OverTimeWithTotal
5275
- * @throws ApiError
5276
- */
5277
- static aiAnalyticsPerlearnerOrgsUsersCoursesOverviewTimeOverTimeRetrieve({
5278
- courseId,
5279
- org,
5280
- userId,
5281
- departmentId,
5282
- endDate,
5283
- format = 'json',
5284
- includeMainPlatform = true,
5285
- startDate
5286
- }) {
5287
- return request(OpenAPI, {
5288
- method: 'GET',
5289
- url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/courses/{course_id}/overview/time/over-time',
5290
- path: {
5291
- 'course_id': courseId,
5292
- 'org': org,
5293
- 'user_id': userId
5294
- },
5295
- query: {
5296
- 'department_id': departmentId,
5297
- 'end_date': endDate,
5298
- 'format': format,
5299
- 'include_main_platform': includeMainPlatform,
5300
- 'start_date': startDate
5301
- }
5302
- });
5303
- }
5304
- /**
5305
- * List of videos within a course a learner has watched
5306
- *
5307
- * Kwargs
5308
- * 1. course_id e.g course-v1:Org+Course4+Run
5309
- * 2. user_id e.g developer@ibleducation.com or dev123 (username|email)
5310
- *
5311
- * Default result when no query param is added is [], 0
5312
- * @returns PerLearnerCourseVideosWatched
5313
- * @throws ApiError
5314
- */
5315
- static aiAnalyticsPerlearnerOrgsUsersCoursesVideosRetrieve({
5316
- courseId,
5317
- org,
5318
- userId,
5319
- departmentId,
5320
- format = 'json',
5321
- includeMainPlatform = true
5322
- }) {
5323
- return request(OpenAPI, {
5324
- method: 'GET',
5325
- url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/courses/{course_id}/videos',
5326
- path: {
5327
- 'course_id': courseId,
5328
- 'org': org,
5329
- 'user_id': userId
5330
- },
5331
- query: {
5332
- 'department_id': departmentId,
5333
- 'format': format,
5334
- 'include_main_platform': includeMainPlatform
5335
- }
5336
- });
5337
- }
5338
- /**
5339
- * Get video watch counts over time.
5340
- *
5341
- * This endpoint provides daily counts of videos watched over a specified time period,
5342
- * with options to filter by course or user.
5343
- *
5344
- * Query Parameters:
5345
- * start_date (str, optional): Start date for the time range (ISO format)
5346
- * end_date (str, optional): End date for the time range (ISO format)
5347
- * course_id (str, optional): Filter by course ID
5348
- * user_id (str, optional): Filter by username or email
5349
- *
5350
- * Returns:
5351
- * Daily video watch counts over the specified time period.
5352
- *
5353
- * Default time range is the last 7 days if no dates are specified.
5354
- *
5355
- * Access Control:
5356
- * - Platform admins can access any video watch data
5357
- * - Learners can access their own video watch data
5358
- * @returns OverTimeWithTotal
5359
- * @throws ApiError
5360
- */
5361
- static aiAnalyticsPerlearnerOrgsUsersCoursesVideosOverTimeRetrieve({
5362
- courseId,
5363
- org,
5364
- userId,
5365
- departmentId,
5366
- endDate,
5367
- format = 'json',
5368
- includeMainPlatform = true,
5369
- startDate
5370
- }) {
5371
- return request(OpenAPI, {
5372
- method: 'GET',
5373
- url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/courses/{course_id}/videos/over-time',
5374
- path: {
5375
- 'course_id': courseId,
5376
- 'org': org,
5377
- 'user_id': userId
5378
- },
5379
- query: {
5380
- 'department_id': departmentId,
5381
- 'end_date': endDate,
5382
- 'format': format,
5383
- 'include_main_platform': includeMainPlatform,
5384
- 'start_date': startDate
5385
- }
5386
- });
5387
- }
5388
- /**
5389
- * Summary Grading Information for a learner on a per-enrollment basis
5390
- *
5391
- * Query Params
5392
- * 1. user_id e.g developer@ibleducation.com or dev123 (username|email)
5393
- * @returns PerlearnerGradingPerCourseAPI
5394
- * @throws ApiError
5395
- */
5396
- static aiAnalyticsPerlearnerOrgsUsersGradesPerCourseRetrieve({
5397
- org,
5398
- userId,
5399
- departmentId,
5400
- format = 'json',
5401
- includeMainPlatform = true
5402
- }) {
5403
- return request(OpenAPI, {
5404
- method: 'GET',
5405
- url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/grades/per-course',
5406
- path: {
5407
- 'org': org,
5408
- 'user_id': userId
5409
- },
5410
- query: {
5411
- 'department_id': departmentId,
5412
- 'format': format,
5413
- 'include_main_platform': includeMainPlatform
5414
- }
5415
- });
5416
- }
5417
- /**
5418
- * Retrieve detailed information about a specific learner.
5419
- *
5420
- * This endpoint returns personal and activity information about a learner,
5421
- * including profile data, activity metrics, and location information.
5422
- *
5423
- * Path Parameters:
5424
- * user_id (str): The username or email of the learner
5425
- *
5426
- * Query Parameters:
5427
- * meta (bool): Include additional analytics information when true
5428
- *
5429
- * Returns:
5430
- * Detailed learner information including:
5431
- * - Profile data (username, name, email)
5432
- * - Registration and activity dates
5433
- * - Activity metrics (assessments, time spent, videos watched)
5434
- * - Location and browser information (when available)
5435
- *
5436
- * Access Control:
5437
- * - Platform admins can access any learner
5438
- * - Learners can access their own information
5439
- * - Department admins can access learners in their departments
5440
- * @returns LearnerInformationAPI
5441
- * @throws ApiError
5442
- */
5443
- static aiAnalyticsPerlearnerOrgsUsersInfoRetrieve({
5444
- org,
5445
- userId,
5446
- departmentId,
5447
- format = 'json',
5448
- includeMainPlatform = true,
5449
- meta = 'n',
5450
- search
5451
- }) {
5452
- return request(OpenAPI, {
5453
- method: 'GET',
5454
- url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/info',
5455
- path: {
5456
- 'org': org,
5457
- 'user_id': userId
5458
- },
5459
- query: {
5460
- 'department_id': departmentId,
5461
- 'format': format,
5462
- 'include_main_platform': includeMainPlatform,
5463
- 'meta': meta,
5464
- 'search': search
5465
- }
5466
- });
5467
- }
5468
- /**
5469
- * Last course accessed by a learner, includes upto unit information as well
5470
- * @returns PerLearnerLastAccess
5471
- * @throws ApiError
5472
- */
5473
- static aiAnalyticsPerlearnerOrgsUsersLastAccessRetrieve({
5474
- org,
5475
- userId,
5476
- departmentId,
5477
- format = 'json',
5478
- includeMainPlatform = true
5479
- }) {
5480
- return request(OpenAPI, {
5481
- method: 'GET',
5482
- url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/last-access',
5483
- path: {
5484
- 'org': org,
5485
- 'user_id': userId
5486
- },
5487
- query: {
5488
- 'department_id': departmentId,
5489
- 'format': format,
5490
- 'include_main_platform': includeMainPlatform
5491
- }
5492
- });
5493
- }
5494
- /**
5495
- * Average of days with atleast an activity within ENGAGEMENT_INDEX_PERIOD consecutive days
5496
- * @returns Value
5497
- * @throws ApiError
5498
- */
5499
- static aiAnalyticsPerlearnerOrgsUsersOverviewEngagementIndexRetrieve({
5500
- org,
5501
- userId,
5502
- departmentId,
5503
- endDate,
5504
- format = 'json',
5505
- includeMainPlatform = true,
5506
- startDate
5507
- }) {
5508
- return request(OpenAPI, {
5509
- method: 'GET',
5510
- url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/overview/engagement-index',
5511
- path: {
5512
- 'org': org,
5513
- 'user_id': userId
5514
- },
5515
- query: {
5516
- 'department_id': departmentId,
5517
- 'end_date': endDate,
5518
- 'format': format,
5519
- 'include_main_platform': includeMainPlatform,
5520
- 'start_date': startDate
5521
- }
5522
- });
5523
- }
5524
- /**
5525
- * Get average grade value for platform, course, or user.
5526
- *
5527
- * This endpoint returns the average grade at different levels:
5528
- * - Platform level: Average grade across all courses
5529
- * - Course level: Average grade for a specific course
5530
- * - Learner level: Average grade for a specific learner
5531
- * - Course-learner level: Grade for a specific learner in a specific course
5532
- *
5533
- * Query Parameters:
5534
- * course_id (str, optional): Filter by course ID
5535
- * learner_id (str, optional): Filter by username or email
5536
- *
5537
- * Returns:
5538
- * The average grade value based on the specified filters.
5539
- *
5540
- * Access Control:
5541
- * - Platform admins can access any grade data
5542
- * - Learners can access their own grade data
5543
- * @returns Average
5544
- * @throws ApiError
5545
- */
5546
- static aiAnalyticsPerlearnerOrgsUsersOverviewGradesAverageRetrieve({
5547
- org,
5548
- userId,
5549
- departmentId,
5550
- format = 'json',
5551
- includeMainPlatform = true
5552
- }) {
5553
- return request(OpenAPI, {
5554
- method: 'GET',
5555
- url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/overview/grades/average',
5556
- path: {
5557
- 'org': org,
5558
- 'user_id': userId
5559
- },
5560
- query: {
5561
- 'department_id': departmentId,
5562
- 'format': format,
5563
- 'include_main_platform': includeMainPlatform
5564
- }
5565
- });
5566
- }
5567
- /**
5568
- * Evaluates performance index for platform, per course, per user and per user-per course
5569
- *
5570
- * Query Params
5571
- * course_id <optional>
5572
- * learner_id <optional>
5573
- * @returns Value
5574
- * @throws ApiError
5575
- */
5576
- static aiAnalyticsPerlearnerOrgsUsersOverviewPerformanceIndexRetrieve({
5577
- org,
5578
- userId,
5579
- departmentId,
5580
- endDate,
5581
- format = 'json',
5582
- includeMainPlatform = true,
5583
- startDate
5584
- }) {
5585
- return request(OpenAPI, {
5586
- method: 'GET',
5587
- url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/overview/performance-index',
5588
- path: {
5589
- 'org': org,
5590
- 'user_id': userId
5591
- },
5592
- query: {
5593
- 'department_id': departmentId,
5594
- 'end_date': endDate,
5595
- 'format': format,
5596
- 'include_main_platform': includeMainPlatform,
5597
- 'start_date': startDate
5598
- }
5599
- });
5600
- }
5601
- /**
5602
- * Time spent in secs on a per-day basis
5603
- *
5604
- * Query Params
5605
- * 1. course_id <optional> e.g course-v1:Org+Course4+Run
5606
- * 2. user_id <optional> e.g developer@ibleducation.com or dev123 (username|email)
5607
- * 3. start_date e.g 2020-10-01
5608
- * 4. end_date e.g 2020-10-10
5609
- *
5610
- * Default result when no query param is added is last_7_days (today inclusive)
5611
- * @returns OverTimeWithTotal
5612
- * @throws ApiError
5613
- */
5614
- static aiAnalyticsPerlearnerOrgsUsersOverviewTimeOverTimeRetrieve({
5615
- org,
5616
- userId,
5617
- departmentId,
5618
- endDate,
5619
- format = 'json',
5620
- includeMainPlatform = true,
5621
- startDate
5622
- }) {
5623
- return request(OpenAPI, {
5624
- method: 'GET',
5625
- url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/overview/time/over-time',
5626
- path: {
5627
- 'org': org,
5628
- 'user_id': userId
5629
- },
5630
- query: {
5631
- 'department_id': departmentId,
5632
- 'end_date': endDate,
5633
- 'format': format,
5634
- 'include_main_platform': includeMainPlatform,
5635
- 'start_date': startDate
5636
- }
5637
- });
5638
- }
5639
- /**
5640
- * Get video watch counts over time.
5641
- *
5642
- * This endpoint provides daily counts of videos watched over a specified time period,
5643
- * with options to filter by course or user.
5644
- *
5645
- * Query Parameters:
5646
- * start_date (str, optional): Start date for the time range (ISO format)
5647
- * end_date (str, optional): End date for the time range (ISO format)
5648
- * course_id (str, optional): Filter by course ID
5649
- * user_id (str, optional): Filter by username or email
5650
- *
5651
- * Returns:
5652
- * Daily video watch counts over the specified time period.
5653
- *
5654
- * Default time range is the last 7 days if no dates are specified.
5655
- *
5656
- * Access Control:
5657
- * - Platform admins can access any video watch data
5658
- * - Learners can access their own video watch data
5659
- * @returns OverTimeWithTotal
5660
- * @throws ApiError
5661
- */
5662
- static aiAnalyticsPerlearnerOrgsUsersVideosOverTimeRetrieve({
5663
- org,
5664
- userId,
5665
- departmentId,
5666
- endDate,
5667
- format = 'json',
5668
- includeMainPlatform = true,
5669
- startDate
5670
- }) {
5671
- return request(OpenAPI, {
5672
- method: 'GET',
5673
- url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/videos/over-time',
5674
- path: {
5675
- 'org': org,
5676
- 'user_id': userId
5677
- },
5678
- query: {
5679
- 'department_id': departmentId,
5680
- 'end_date': endDate,
5681
- 'format': format,
5682
- 'include_main_platform': includeMainPlatform,
5683
- 'start_date': startDate
5684
- }
5685
- });
5686
- }
5687
- /**
5688
- * Summary Videos watched data for a learner per enrollment
5689
- *
5690
- * Query Params
5691
- * 1. user_id e.g developer@ibleducation.com or dev123 (username|email)
5692
- * @returns PerlearnerEngagementVideosWatchedPerCourse
5693
- * @throws ApiError
5694
- */
5695
- static aiAnalyticsPerlearnerOrgsUsersVideosPerCourseRetrieve({
5696
- org,
5697
- userId,
5698
- departmentId,
5699
- endDate,
5700
- format = 'json',
5701
- includeMainPlatform = true,
5702
- startDate
5703
- }) {
5704
- return request(OpenAPI, {
5705
- method: 'GET',
5706
- url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/videos/per-course',
5707
- path: {
5708
- 'org': org,
5709
- 'user_id': userId
5710
- },
5711
- query: {
5712
- 'department_id': departmentId,
5713
- 'end_date': endDate,
5714
- 'format': format,
5715
- 'include_main_platform': includeMainPlatform,
5716
- 'start_date': startDate
5717
- }
5718
- });
5719
- }
5720
- /**
5721
- * Get a list of user groups with metrics and filtering options.
5722
- *
5723
- * This endpoint provides a paginated list of user groups with aggregated metrics
5724
- * about learner performance, course completions, and skill acquisition.
5725
- *
5726
- * This endpoint uses DM token authentication and respects department-based
5727
- * access controls.
5728
- *
5729
- * Query Parameters:
5730
- * page (int, optional): Page number for pagination
5731
- * length (int, optional): Number of items per page
5732
- * program (str, optional): Filter by program
5733
- * pathway (str, optional): Filter by pathway
5734
- * groups (list, optional): Filter by group names
5735
- * location (str, optional): Filter by location
5736
- * is_enrolled (bool, optional): Filter for groups with enrolled users
5737
- * start_date (date, optional): Filter by learner join date (start range)
5738
- * end_date (date, optional): Filter by learner join date (end range)
5739
- *
5740
- * Returns:
5741
- * A paginated list of user groups with comprehensive metrics.
5742
- *
5743
- * Access Control:
5744
- * - Platform admins can see all groups
5745
- * - Department admins can only see groups in their departments
5746
- * @returns GroupList
5747
- * @throws ApiError
5748
- */
5749
- static aiAnalyticsUserGroupsOrgsRetrieve({
5750
- org,
5751
- departmentId,
5752
- endDate,
5753
- format = 'json',
5754
- groups,
5755
- includeMainPlatform = true,
5756
- isEnrolled,
5757
- length,
5758
- location,
5759
- page,
5760
- pathway,
5761
- program,
5762
- startDate
5763
- }) {
5764
- return request(OpenAPI, {
5765
- method: 'GET',
5766
- url: '/api/ai-analytics/user-groups/orgs/{org}/',
5767
- path: {
5768
- 'org': org
5769
- },
5770
- query: {
5771
- 'department_id': departmentId,
5772
- 'end_date': endDate,
5773
- 'format': format,
5774
- 'groups': groups,
5775
- 'include_main_platform': includeMainPlatform,
5776
- 'is_enrolled': isEnrolled,
5777
- 'length': length,
5778
- 'location': location,
5779
- 'page': page,
5780
- 'pathway': pathway,
5781
- 'program': program,
5782
- 'start_date': startDate
5783
- }
5784
- });
5785
- }
5786
- }
5787
-
5788
- class AiBotService {
5789
- /**
5790
- * Create modify and update bot information for a specific tenant.
5791
- * @returns Bot
5792
- * @throws ApiError
5793
- */
5794
- static aiBotV1BotsBotList({
5795
- org
5796
- }) {
5797
- return request(OpenAPI, {
5798
- method: 'GET',
5799
- url: '/api/ai-bot/v1/bots/{org}/bot/',
5800
- path: {
5801
- 'org': org
5802
- }
5803
- });
5804
- }
5805
- /**
5806
- * Create modify and update bot information for a specific tenant.
5807
- * @returns BotCreate
5808
- * @throws ApiError
5809
- */
5810
- static aiBotV1BotsBotCreate({
5811
- org,
5812
- requestBody
5813
- }) {
5814
- return request(OpenAPI, {
5815
- method: 'POST',
5816
- url: '/api/ai-bot/v1/bots/{org}/bot/',
5817
- path: {
5818
- 'org': org
5819
- },
5820
- body: requestBody,
5821
- mediaType: 'application/json'
5822
- });
5823
- }
5824
- /**
5825
- * Create slash commands for a specific bot
5826
- * eg. /iblai-baseline
5827
- * @returns BotCommand
5828
- * @throws ApiError
5829
- */
5830
- static aiBotV1BotsBotCommandsList({
5831
- org
5832
- }) {
5833
- return request(OpenAPI, {
5834
- method: 'GET',
5835
- url: '/api/ai-bot/v1/bots/{org}/bot-commands/',
5836
- path: {
5837
- 'org': org
5838
- }
5839
- });
5840
- }
5841
- /**
5842
- * Create slash commands for a specific bot
5843
- * eg. /iblai-baseline
5844
- * @returns BotCommand
5845
- * @throws ApiError
5846
- */
5847
- static aiBotV1BotsBotCommandsCreate({
5848
- org,
5849
- requestBody
5850
- }) {
5851
- return request(OpenAPI, {
5852
- method: 'POST',
5853
- url: '/api/ai-bot/v1/bots/{org}/bot-commands/',
5854
- path: {
5855
- 'org': org
5856
- },
5857
- body: requestBody,
5858
- mediaType: 'application/json'
5859
- });
5860
- }
5861
- /**
5862
- * Create slash commands for a specific bot
5863
- * eg. /iblai-baseline
5864
- * @returns BotCommand
5865
- * @throws ApiError
5866
- */
5867
- static aiBotV1BotsBotCommandsRetrieve({
5868
- id,
5869
- org
5870
- }) {
5871
- return request(OpenAPI, {
5872
- method: 'GET',
5873
- url: '/api/ai-bot/v1/bots/{org}/bot-commands/{id}/',
5874
- path: {
5875
- 'id': id,
5876
- 'org': org
5877
- }
5878
- });
5879
- }
5880
- /**
5881
- * Create slash commands for a specific bot
5882
- * eg. /iblai-baseline
5883
- * @returns BotCommand
5884
- * @throws ApiError
5885
- */
5886
- static aiBotV1BotsBotCommandsUpdate({
5887
- id,
5888
- org,
5889
- requestBody
5890
- }) {
5891
- return request(OpenAPI, {
5892
- method: 'PUT',
5893
- url: '/api/ai-bot/v1/bots/{org}/bot-commands/{id}/',
5894
- path: {
5895
- 'id': id,
5896
- 'org': org
5897
- },
5898
- body: requestBody,
5899
- mediaType: 'application/json'
5900
- });
5901
- }
5902
- /**
5903
- * Create slash commands for a specific bot
5904
- * eg. /iblai-baseline
5905
- * @returns BotCommand
5906
- * @throws ApiError
5907
- */
5908
- static aiBotV1BotsBotCommandsPartialUpdate({
5909
- id,
5910
- org,
5911
- requestBody
5912
- }) {
5913
- return request(OpenAPI, {
5914
- method: 'PATCH',
5915
- url: '/api/ai-bot/v1/bots/{org}/bot-commands/{id}/',
5916
- path: {
5917
- 'id': id,
5918
- 'org': org
5919
- },
5920
- body: requestBody,
5921
- mediaType: 'application/json'
5922
- });
5923
- }
5924
- /**
5925
- * Create slash commands for a specific bot
5926
- * eg. /iblai-baseline
5927
- * @returns void
5928
- * @throws ApiError
5929
- */
5930
- static aiBotV1BotsBotCommandsDestroy({
5931
- id,
5932
- org
5933
- }) {
5934
- return request(OpenAPI, {
5935
- method: 'DELETE',
5936
- url: '/api/ai-bot/v1/bots/{org}/bot-commands/{id}/',
5937
- path: {
5938
- 'id': id,
5939
- 'org': org
5940
- }
5941
- });
5942
- }
5943
- /**
5944
- * Create modify and update bot information for a specific tenant.
5945
- * @returns Bot
5946
- * @throws ApiError
5947
- */
5948
- static aiBotV1BotsBotRetrieve({
5949
- id,
5950
- org
5951
- }) {
5952
- return request(OpenAPI, {
5953
- method: 'GET',
5954
- url: '/api/ai-bot/v1/bots/{org}/bot/{id}/',
5955
- path: {
5956
- 'id': id,
5957
- 'org': org
5958
- }
5959
- });
5960
- }
5961
- /**
5962
- * Create modify and update bot information for a specific tenant.
5963
- * @returns BotCreate
5964
- * @throws ApiError
5965
- */
5966
- static aiBotV1BotsBotUpdate({
5967
- id,
5968
- org,
5969
- requestBody
5970
- }) {
5971
- return request(OpenAPI, {
5972
- method: 'PUT',
5973
- url: '/api/ai-bot/v1/bots/{org}/bot/{id}/',
5974
- path: {
5975
- 'id': id,
5976
- 'org': org
5977
- },
5978
- body: requestBody,
5979
- mediaType: 'application/json'
5980
- });
5981
- }
5982
- /**
5983
- * Create modify and update bot information for a specific tenant.
5984
- * @returns BotCreate
5985
- * @throws ApiError
5986
- */
5987
- static aiBotV1BotsBotPartialUpdate({
5988
- id,
5989
- org,
5990
- requestBody
5991
- }) {
5992
- return request(OpenAPI, {
5993
- method: 'PATCH',
5994
- url: '/api/ai-bot/v1/bots/{org}/bot/{id}/',
5995
- path: {
5996
- 'id': id,
5997
- 'org': org
5998
- },
5999
- body: requestBody,
6000
- mediaType: 'application/json'
6001
- });
6002
- }
6003
- /**
6004
- * Create modify and update bot information for a specific tenant.
6005
- * @returns void
6006
- * @throws ApiError
6007
- */
6008
- static aiBotV1BotsBotDestroy({
6009
- id,
6010
- org
6011
- }) {
6012
- return request(OpenAPI, {
6013
- method: 'DELETE',
6014
- url: '/api/ai-bot/v1/bots/{org}/bot/{id}/',
6015
- path: {
6016
- 'id': id,
6017
- 'org': org
6018
- }
6019
- });
6020
- }
6021
- /**
6022
- * Create modify and update bot information for a specific tenant.
6023
- * @returns DiscordConfig
6024
- * @throws ApiError
6025
- */
6026
- static aiBotV1BotsBotConfigDiscordRetrieve({
6027
- id,
6028
- org
6029
- }) {
6030
- return request(OpenAPI, {
6031
- method: 'GET',
6032
- url: '/api/ai-bot/v1/bots/{org}/bot/{id}/config/discord/',
6033
- path: {
6034
- 'id': id,
6035
- 'org': org
6036
- }
6037
- });
6038
- }
6039
- /**
6040
- * Create modify and update bot information for a specific tenant.
6041
- * @returns DiscordConfig
6042
- * @throws ApiError
6043
- */
6044
- static aiBotV1BotsBotConfigDiscordPartialUpdate({
6045
- id,
6046
- org,
6047
- requestBody
6048
- }) {
6049
- return request(OpenAPI, {
6050
- method: 'PATCH',
6051
- url: '/api/ai-bot/v1/bots/{org}/bot/{id}/config/discord/',
6052
- path: {
6053
- 'id': id,
6054
- 'org': org
6055
- },
6056
- body: requestBody,
6057
- mediaType: 'application/json'
6058
- });
6059
- }
6060
- /**
6061
- * Create modify and update bot information for a specific tenant.
6062
- * @returns SlackConfig
6063
- * @throws ApiError
6064
- */
6065
- static aiBotV1BotsBotConfigSlackRetrieve({
6066
- id,
6067
- org
6068
- }) {
6069
- return request(OpenAPI, {
6070
- method: 'GET',
6071
- url: '/api/ai-bot/v1/bots/{org}/bot/{id}/config/slack/',
6072
- path: {
6073
- 'id': id,
6074
- 'org': org
6075
- }
6076
- });
6077
- }
6078
- /**
6079
- * Create modify and update bot information for a specific tenant.
6080
- * @returns SlackConfig
6081
- * @throws ApiError
6082
- */
6083
- static aiBotV1BotsBotConfigSlackUpdateCreate({
6084
- id,
6085
- org,
6086
- requestBody
6087
- }) {
6088
- return request(OpenAPI, {
6089
- method: 'POST',
6090
- url: '/api/ai-bot/v1/bots/{org}/bot/{id}/config/slack/update/',
6091
- path: {
6092
- 'id': id,
6093
- 'org': org
6094
- },
6095
- body: requestBody,
6096
- mediaType: 'application/json'
6097
- });
6098
- }
6099
- /**
6100
- * Create modify and update bot information for a specific tenant.
6101
- * @returns SlackConfig
6102
- * @throws ApiError
6103
- */
6104
- static aiBotV1BotsBotConfigSlackUpdateUpdate({
6105
- id,
6106
- org,
6107
- requestBody
6108
- }) {
6109
- return request(OpenAPI, {
6110
- method: 'PUT',
6111
- url: '/api/ai-bot/v1/bots/{org}/bot/{id}/config/slack/update/',
6112
- path: {
6113
- 'id': id,
6114
- 'org': org
6115
- },
6116
- body: requestBody,
6117
- mediaType: 'application/json'
6118
- });
6119
- }
6120
- /**
6121
- * Create modify and update bot information for a specific tenant.
6122
- * @returns SlackConfig
6123
- * @throws ApiError
6124
- */
6125
- static aiBotV1BotsBotConfigSlackUpdatePartialUpdate({
6126
- id,
6127
- org,
6128
- requestBody
6129
- }) {
6130
- return request(OpenAPI, {
6131
- method: 'PATCH',
6132
- url: '/api/ai-bot/v1/bots/{org}/bot/{id}/config/slack/update/',
6133
- path: {
6134
- 'id': id,
6135
- 'org': org
6136
- },
6137
- body: requestBody,
6138
- mediaType: 'application/json'
6139
- });
6140
- }
6141
- /**
6142
- * Create modify and update bot information for a specific tenant.
6143
- * @returns TeamsConfig
6144
- * @throws ApiError
6145
- */
6146
- static aiBotV1BotsBotConfigTeamsRetrieve({
6147
- id,
6148
- org
6149
- }) {
6150
- return request(OpenAPI, {
6151
- method: 'GET',
6152
- url: '/api/ai-bot/v1/bots/{org}/bot/{id}/config/teams/',
6153
- path: {
6154
- 'id': id,
6155
- 'org': org
6156
- }
6157
- });
6158
- }
6159
- /**
6160
- * Create modify and update bot information for a specific tenant.
6161
- * @returns TeamsConfig
6162
- * @throws ApiError
6163
- */
6164
- static aiBotV1BotsBotConfigTeamsUpdateCreate({
6165
- id,
6166
- org,
6167
- requestBody
6168
- }) {
6169
- return request(OpenAPI, {
6170
- method: 'POST',
6171
- url: '/api/ai-bot/v1/bots/{org}/bot/{id}/config/teams/update/',
6172
- path: {
6173
- 'id': id,
6174
- 'org': org
6175
- },
6176
- body: requestBody,
6177
- mediaType: 'application/json'
6178
- });
6179
- }
6180
- /**
6181
- * Create modify and update bot information for a specific tenant.
6182
- * @returns TeamsConfig
6183
- * @throws ApiError
6184
- */
6185
- static aiBotV1BotsBotConfigTeamsUpdateUpdate({
6186
- id,
6187
- org,
6188
- requestBody
6189
- }) {
6190
- return request(OpenAPI, {
6191
- method: 'PUT',
6192
- url: '/api/ai-bot/v1/bots/{org}/bot/{id}/config/teams/update/',
6193
- path: {
6194
- 'id': id,
6195
- 'org': org
6196
- },
6197
- body: requestBody,
6198
- mediaType: 'application/json'
6199
- });
6200
- }
6201
- /**
6202
- * Create modify and update bot information for a specific tenant.
6203
- * @returns TeamsConfig
6204
- * @throws ApiError
6205
- */
6206
- static aiBotV1BotsBotConfigTeamsUpdatePartialUpdate({
6207
- id,
6208
- org,
6209
- requestBody
6210
- }) {
6211
- return request(OpenAPI, {
6212
- method: 'PATCH',
6213
- url: '/api/ai-bot/v1/bots/{org}/bot/{id}/config/teams/update/',
6214
- path: {
6215
- 'id': id,
6216
- 'org': org
6217
- },
6218
- body: requestBody,
6219
- mediaType: 'application/json'
6220
- });
6221
- }
6222
- /**
6223
- * Create modify and update bot information for a specific tenant.
6224
- * @returns WebexConfig
6225
- * @throws ApiError
6226
- */
6227
- static aiBotV1BotsBotConfigWebexRetrieve({
6228
- id,
6229
- org
6230
- }) {
6231
- return request(OpenAPI, {
6232
- method: 'GET',
6233
- url: '/api/ai-bot/v1/bots/{org}/bot/{id}/config/webex/',
6234
- path: {
6235
- 'id': id,
6236
- 'org': org
6237
- }
6238
- });
6239
- }
6240
- /**
6241
- * Create modify and update bot information for a specific tenant.
6242
- * @returns WebexConfig
6243
- * @throws ApiError
6244
- */
6245
- static aiBotV1BotsBotConfigWebexPartialUpdate({
6246
- id,
6247
- org,
6248
- requestBody
6249
- }) {
6250
- return request(OpenAPI, {
6251
- method: 'PATCH',
6252
- url: '/api/ai-bot/v1/bots/{org}/bot/{id}/config/webex/',
6253
- path: {
6254
- 'id': id,
6255
- 'org': org
6256
- },
6257
- body: requestBody,
6258
- mediaType: 'application/json'
6259
- });
6260
- }
6261
- /**
6262
- * Create modify and update bot information for a specific tenant.
6263
- * @returns WhatsappConfig
6264
- * @throws ApiError
6265
- */
6266
- static aiBotV1BotsBotConfigWhatsappRetrieve({
6267
- id,
6268
- org
6269
- }) {
6270
- return request(OpenAPI, {
6271
- method: 'GET',
6272
- url: '/api/ai-bot/v1/bots/{org}/bot/{id}/config/whatsapp/',
6273
- path: {
6274
- 'id': id,
6275
- 'org': org
6276
- }
6277
- });
6278
- }
6279
- /**
6280
- * Create modify and update bot information for a specific tenant.
6281
- * @returns WhatsappConfig
6282
- * @throws ApiError
6283
- */
6284
- static aiBotV1BotsBotWhatsappConfigUpdate({
6285
- id,
6286
- org,
6287
- requestBody
6288
- }) {
6289
- return request(OpenAPI, {
6290
- method: 'PUT',
6291
- url: '/api/ai-bot/v1/bots/{org}/bot/{id}/whatsapp-config/',
6292
- path: {
6293
- 'id': id,
6294
- 'org': org
6295
- },
6296
- body: requestBody,
6297
- mediaType: 'application/json'
6298
- });
6299
- }
6300
- /**
6301
- * Create modify and update bot information for a specific tenant.
6302
- * @returns WhatsappConfig
6303
- * @throws ApiError
6304
- */
6305
- static aiBotV1BotsBotWhatsappConfigPartialUpdate({
6306
- id,
6307
- org,
6308
- requestBody
6309
- }) {
6310
- return request(OpenAPI, {
6311
- method: 'PATCH',
6312
- url: '/api/ai-bot/v1/bots/{org}/bot/{id}/whatsapp-config/',
6313
- path: {
6314
- 'id': id,
6315
- 'org': org
6316
- },
6317
- body: requestBody,
6318
- mediaType: 'application/json'
6319
- });
6320
- }
6321
- /**
6322
- * Setup discord user id linkage with discord bots
6323
- * this will be used to authenticate the user when interracting with discord bots.
6324
- * the user id can be copied from the discord app after tapping on the user profile.
6325
- * @returns DiscordUserConfig
6326
- * @throws ApiError
6327
- */
6328
- static aiBotV1BotsDiscordUserConfigList({
6329
- org
6330
- }) {
6331
- return request(OpenAPI, {
6332
- method: 'GET',
6333
- url: '/api/ai-bot/v1/bots/{org}/discord-user-config/',
6334
- path: {
6335
- 'org': org
6336
- }
6337
- });
6338
- }
6339
- /**
6340
- * Setup discord user id linkage with discord bots
6341
- * this will be used to authenticate the user when interracting with discord bots.
6342
- * the user id can be copied from the discord app after tapping on the user profile.
6343
- * @returns DiscordUserConfig
6344
- * @throws ApiError
6345
- */
6346
- static aiBotV1BotsDiscordUserConfigCreate({
6347
- org,
6348
- requestBody
6349
- }) {
6350
- return request(OpenAPI, {
6351
- method: 'POST',
6352
- url: '/api/ai-bot/v1/bots/{org}/discord-user-config/',
6353
- path: {
6354
- 'org': org
6355
- },
6356
- body: requestBody,
6357
- mediaType: 'application/json'
6358
- });
6359
- }
6360
- /**
6361
- * Setup discord user id linkage with discord bots
6362
- * this will be used to authenticate the user when interracting with discord bots.
6363
- * the user id can be copied from the discord app after tapping on the user profile.
6364
- * @returns DiscordUserConfig
6365
- * @throws ApiError
6366
- */
6367
- static aiBotV1BotsDiscordUserConfigRetrieve({
6368
- id,
6369
- org
6370
- }) {
6371
- return request(OpenAPI, {
6372
- method: 'GET',
6373
- url: '/api/ai-bot/v1/bots/{org}/discord-user-config/{id}/',
6374
- path: {
6375
- 'id': id,
6376
- 'org': org
6377
- }
6378
- });
6379
- }
6380
- /**
6381
- * Setup discord user id linkage with discord bots
6382
- * this will be used to authenticate the user when interracting with discord bots.
6383
- * the user id can be copied from the discord app after tapping on the user profile.
6384
- * @returns DiscordUserConfig
6385
- * @throws ApiError
6386
- */
6387
- static aiBotV1BotsDiscordUserConfigUpdate({
6388
- id,
6389
- org,
6390
- requestBody
6391
- }) {
6392
- return request(OpenAPI, {
6393
- method: 'PUT',
6394
- url: '/api/ai-bot/v1/bots/{org}/discord-user-config/{id}/',
6395
- path: {
6396
- 'id': id,
6397
- 'org': org
6398
- },
6399
- body: requestBody,
6400
- mediaType: 'application/json'
6401
- });
6402
- }
6403
- /**
6404
- * Setup discord user id linkage with discord bots
6405
- * this will be used to authenticate the user when interracting with discord bots.
6406
- * the user id can be copied from the discord app after tapping on the user profile.
6407
- * @returns DiscordUserConfig
6408
- * @throws ApiError
6409
- */
6410
- static aiBotV1BotsDiscordUserConfigPartialUpdate({
6411
- id,
6412
- org,
6413
- requestBody
6414
- }) {
6415
- return request(OpenAPI, {
6416
- method: 'PATCH',
6417
- url: '/api/ai-bot/v1/bots/{org}/discord-user-config/{id}/',
6418
- path: {
6419
- 'id': id,
6420
- 'org': org
6421
- },
6422
- body: requestBody,
6423
- mediaType: 'application/json'
6424
- });
6425
- }
6426
- /**
6427
- * Setup discord user id linkage with discord bots
6428
- * this will be used to authenticate the user when interracting with discord bots.
6429
- * the user id can be copied from the discord app after tapping on the user profile.
6430
- * @returns void
6431
- * @throws ApiError
6432
- */
6433
- static aiBotV1BotsDiscordUserConfigDestroy({
6434
- id,
6435
- org
6436
- }) {
6437
- return request(OpenAPI, {
6438
- method: 'DELETE',
6439
- url: '/api/ai-bot/v1/bots/{org}/discord-user-config/{id}/',
6440
- path: {
6441
- 'id': id,
6442
- 'org': org
6443
- }
6444
- });
6445
- }
6446
- /**
6447
- * Setup slack username and domain linkage with slack bots
6448
- * this will be used to authenticate the user when interracting with slack bots.
6449
- * @returns SlackUserConfig
6450
- * @throws ApiError
6451
- */
6452
- static aiBotV1BotsSlackUserConfigList({
6453
- org
6454
- }) {
6455
- return request(OpenAPI, {
6456
- method: 'GET',
6457
- url: '/api/ai-bot/v1/bots/{org}/slack-user-config/',
6458
- path: {
6459
- 'org': org
6460
- }
6461
- });
6462
- }
6463
- /**
6464
- * Setup slack username and domain linkage with slack bots
6465
- * this will be used to authenticate the user when interracting with slack bots.
6466
- * @returns SlackUserConfig
6467
- * @throws ApiError
6468
- */
6469
- static aiBotV1BotsSlackUserConfigCreate({
6470
- org,
6471
- requestBody
6472
- }) {
6473
- return request(OpenAPI, {
6474
- method: 'POST',
6475
- url: '/api/ai-bot/v1/bots/{org}/slack-user-config/',
6476
- path: {
6477
- 'org': org
6478
- },
6479
- body: requestBody,
6480
- mediaType: 'application/json'
6481
- });
6482
- }
6483
- /**
6484
- * Setup slack username and domain linkage with slack bots
6485
- * this will be used to authenticate the user when interracting with slack bots.
6486
- * @returns SlackUserConfig
6487
- * @throws ApiError
6488
- */
6489
- static aiBotV1BotsSlackUserConfigRetrieve({
6490
- id,
6491
- org
6492
- }) {
6493
- return request(OpenAPI, {
6494
- method: 'GET',
6495
- url: '/api/ai-bot/v1/bots/{org}/slack-user-config/{id}/',
6496
- path: {
6497
- 'id': id,
6498
- 'org': org
6499
- }
6500
- });
6501
- }
6502
- /**
6503
- * Setup slack username and domain linkage with slack bots
6504
- * this will be used to authenticate the user when interracting with slack bots.
6505
- * @returns SlackUserConfig
6506
- * @throws ApiError
6507
- */
6508
- static aiBotV1BotsSlackUserConfigUpdate({
6509
- id,
6510
- org,
6511
- requestBody
6512
- }) {
6513
- return request(OpenAPI, {
6514
- method: 'PUT',
6515
- url: '/api/ai-bot/v1/bots/{org}/slack-user-config/{id}/',
6516
- path: {
6517
- 'id': id,
6518
- 'org': org
6519
- },
6520
- body: requestBody,
6521
- mediaType: 'application/json'
6522
- });
6523
- }
6524
- /**
6525
- * Setup slack username and domain linkage with slack bots
6526
- * this will be used to authenticate the user when interracting with slack bots.
6527
- * @returns SlackUserConfig
6528
- * @throws ApiError
6529
- */
6530
- static aiBotV1BotsSlackUserConfigPartialUpdate({
6531
- id,
6532
- org,
6533
- requestBody
6534
- }) {
6535
- return request(OpenAPI, {
6536
- method: 'PATCH',
6537
- url: '/api/ai-bot/v1/bots/{org}/slack-user-config/{id}/',
6538
- path: {
6539
- 'id': id,
6540
- 'org': org
6541
- },
6542
- body: requestBody,
6543
- mediaType: 'application/json'
6544
- });
6545
- }
6546
- /**
6547
- * Setup slack username and domain linkage with slack bots
6548
- * this will be used to authenticate the user when interracting with slack bots.
6549
- * @returns void
6550
- * @throws ApiError
6551
- */
6552
- static aiBotV1BotsSlackUserConfigDestroy({
6553
- id,
6554
- org
6555
- }) {
6556
- return request(OpenAPI, {
6557
- method: 'DELETE',
6558
- url: '/api/ai-bot/v1/bots/{org}/slack-user-config/{id}/',
6559
- path: {
6560
- 'id': id,
6561
- 'org': org
6562
- }
6563
- });
6564
- }
6565
- /**
6566
- * Setup phone number linkage with whatsapp bots
6567
- * This phone number will be used to authenticate and allow access to whatsapp bots.
6568
- * @returns WhatsappUserConfig
6569
- * @throws ApiError
6570
- */
6571
- static aiBotV1BotsWhatsappUserConfigList({
6572
- org
6573
- }) {
6574
- return request(OpenAPI, {
6575
- method: 'GET',
6576
- url: '/api/ai-bot/v1/bots/{org}/whatsapp-user-config/',
6577
- path: {
6578
- 'org': org
6579
- }
6580
- });
6581
- }
6582
- /**
6583
- * Setup phone number linkage with whatsapp bots
6584
- * This phone number will be used to authenticate and allow access to whatsapp bots.
6585
- * @returns WhatsappUserConfig
6586
- * @throws ApiError
6587
- */
6588
- static aiBotV1BotsWhatsappUserConfigCreate({
6589
- org,
6590
- requestBody
6591
- }) {
6592
- return request(OpenAPI, {
6593
- method: 'POST',
6594
- url: '/api/ai-bot/v1/bots/{org}/whatsapp-user-config/',
6595
- path: {
6596
- 'org': org
6597
- },
6598
- body: requestBody,
6599
- mediaType: 'application/json'
6600
- });
6601
- }
6602
- /**
6603
- * Setup phone number linkage with whatsapp bots
6604
- * This phone number will be used to authenticate and allow access to whatsapp bots.
6605
- * @returns WhatsappUserConfig
6606
- * @throws ApiError
6607
- */
6608
- static aiBotV1BotsWhatsappUserConfigRetrieve({
6609
- id,
6610
- org
6611
- }) {
6612
- return request(OpenAPI, {
6613
- method: 'GET',
6614
- url: '/api/ai-bot/v1/bots/{org}/whatsapp-user-config/{id}/',
6615
- path: {
6616
- 'id': id,
6617
- 'org': org
6618
- }
6619
- });
6620
- }
6621
- /**
6622
- * Setup phone number linkage with whatsapp bots
6623
- * This phone number will be used to authenticate and allow access to whatsapp bots.
6624
- * @returns WhatsappUserConfig
6625
- * @throws ApiError
6626
- */
6627
- static aiBotV1BotsWhatsappUserConfigUpdate({
6628
- id,
6629
- org,
6630
- requestBody
6631
- }) {
6632
- return request(OpenAPI, {
6633
- method: 'PUT',
6634
- url: '/api/ai-bot/v1/bots/{org}/whatsapp-user-config/{id}/',
6635
- path: {
6636
- 'id': id,
6637
- 'org': org
6638
- },
6639
- body: requestBody,
6640
- mediaType: 'application/json'
6641
- });
6642
- }
6643
- /**
6644
- * Setup phone number linkage with whatsapp bots
6645
- * This phone number will be used to authenticate and allow access to whatsapp bots.
6646
- * @returns WhatsappUserConfig
6647
- * @throws ApiError
6648
- */
6649
- static aiBotV1BotsWhatsappUserConfigPartialUpdate({
6650
- id,
6651
- org,
6652
- requestBody
6653
- }) {
6654
- return request(OpenAPI, {
6655
- method: 'PATCH',
6656
- url: '/api/ai-bot/v1/bots/{org}/whatsapp-user-config/{id}/',
6657
- path: {
6658
- 'id': id,
6659
- 'org': org
6660
- },
6661
- body: requestBody,
6662
- mediaType: 'application/json'
6663
- });
6664
- }
6665
- /**
6666
- * Setup phone number linkage with whatsapp bots
6667
- * This phone number will be used to authenticate and allow access to whatsapp bots.
6668
- * @returns void
6669
- * @throws ApiError
6670
- */
6671
- static aiBotV1BotsWhatsappUserConfigDestroy({
6672
- id,
6673
- org
6674
- }) {
6675
- return request(OpenAPI, {
6676
- method: 'DELETE',
6677
- url: '/api/ai-bot/v1/bots/{org}/whatsapp-user-config/{id}/',
6678
- path: {
6679
- 'id': id,
6680
- 'org': org
6681
- }
6682
- });
6683
- }
6684
- /**
6685
- * Webhook endpoint to receive and process discord messages.
6686
- * @returns DiscordWebhook
6687
- * @throws ApiError
6688
- */
6689
- static aiBotV1BotsWebhooksDiscordCreate({
6690
- name,
6691
- org,
6692
- requestBody
6693
- }) {
6694
- return request(OpenAPI, {
6695
- method: 'POST',
6696
- url: '/api/ai-bot/v1/bots/webhooks/{org}/discord/{name}/',
6697
- path: {
6698
- 'name': name,
6699
- 'org': org
6700
- },
6701
- body: requestBody,
6702
- mediaType: 'application/json'
6703
- });
6704
- }
6705
- /**
6706
- * @returns SlackWebhook
6707
- * @throws ApiError
6708
- */
6709
- static aiBotV1BotsWebhooksSlackCreate({
6710
- name,
6711
- org,
6712
- requestBody
6713
- }) {
6714
- return request(OpenAPI, {
6715
- method: 'POST',
6716
- url: '/api/ai-bot/v1/bots/webhooks/{org}/slack/{name}/',
6717
- path: {
6718
- 'name': name,
6719
- 'org': org
6720
- },
6721
- body: requestBody,
6722
- mediaType: 'application/json'
6723
- });
6724
- }
6725
- /**
6726
- * @returns TeamsWebhook
6727
- * @throws ApiError
6728
- */
6729
- static aiBotV1BotsWebhooksTeamsCreate({
6730
- name,
6731
- org,
6732
- requestBody
6733
- }) {
6734
- return request(OpenAPI, {
6735
- method: 'POST',
6736
- url: '/api/ai-bot/v1/bots/webhooks/{org}/teams/{name}/',
6737
- path: {
6738
- 'name': name,
6739
- 'org': org
6740
- },
6741
- body: requestBody,
6742
- mediaType: 'application/json'
6743
- });
6744
- }
6745
- /**
6746
- * Webhook endpoint to receive and process discord messages.
6747
- * @returns WebexWebhook
6748
- * @throws ApiError
6749
- */
6750
- static aiBotV1BotsWebhooksWebexCreate({
6751
- name,
6752
- org,
6753
- requestBody
6754
- }) {
6755
- return request(OpenAPI, {
6756
- method: 'POST',
6757
- url: '/api/ai-bot/v1/bots/webhooks/{org}/webex/{name}/',
6758
- path: {
6759
- 'name': name,
6760
- 'org': org
6761
- },
6762
- body: requestBody,
6763
- mediaType: 'application/json'
6764
- });
6765
- }
6766
- /**
6767
- * Respond to whatsapp's webhook challenge.
6768
- * Parameters Required include the tenant key (org) and the name of the bot: (name)
6769
- * @returns WhatAppWebHook
6770
- * @throws ApiError
6771
- */
6772
- static aiBotV1BotsWebhooksWhatsappRetrieve({
6773
- name,
6774
- org
6775
- }) {
6776
- return request(OpenAPI, {
6777
- method: 'GET',
6778
- url: '/api/ai-bot/v1/bots/webhooks/{org}/whatsapp/{name}/',
6779
- path: {
6780
- 'name': name,
6781
- 'org': org
6782
- }
6783
- });
6784
- }
6785
- /**
6786
- * Accept and process webhook events from whatsapp.
6787
- * @returns WhatAppWebHook
5180
+ * Query Params
5181
+ * course_id <optional>
5182
+ * learner_id <optional>
5183
+ * @returns Value
6788
5184
  * @throws ApiError
6789
5185
  */
6790
- static aiBotV1BotsWebhooksWhatsappCreate({
6791
- name,
5186
+ static aiAnalyticsPerlearnerOrgsUsersCoursesOverviewPerformanceIndexRetrieve({
5187
+ courseId,
6792
5188
  org,
6793
- requestBody
5189
+ userId,
5190
+ departmentId,
5191
+ endDate,
5192
+ format = 'json',
5193
+ includeMainPlatform = true,
5194
+ startDate
6794
5195
  }) {
6795
5196
  return request(OpenAPI, {
6796
- method: 'POST',
6797
- url: '/api/ai-bot/v1/bots/webhooks/{org}/whatsapp/{name}/',
5197
+ method: 'GET',
5198
+ url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/courses/{course_id}/overview/performance-index',
6798
5199
  path: {
6799
- 'name': name,
6800
- 'org': org
5200
+ 'course_id': courseId,
5201
+ 'org': org,
5202
+ 'user_id': userId
6801
5203
  },
6802
- body: requestBody,
6803
- mediaType: 'application/json'
5204
+ query: {
5205
+ 'department_id': departmentId,
5206
+ 'end_date': endDate,
5207
+ 'format': format,
5208
+ 'include_main_platform': includeMainPlatform,
5209
+ 'start_date': startDate
5210
+ }
6804
5211
  });
6805
5212
  }
6806
- }
6807
-
6808
- class AiFinetuningService {
6809
5213
  /**
6810
- * Mixin that includes the StudentTokenAuthentication and IsPlatformAdmin
6811
- * @returns PaginatedDataSetList
5214
+ * Time spent within a course in secs on a per-day basis
5215
+ *
5216
+ * Kwargs
5217
+ * 1. course_id e.g course-v1:Org+Course4+Run
5218
+ * 2. user_id e.g developer@ibleducation.com or dev123 (username|email)
5219
+ * Query Params
5220
+ * 3. start_date e.g 2020-10-01
5221
+ * 4. end_date e.g 2020-10-10
5222
+ *
5223
+ * Default result when no query param is added is last_7_days (today inclusive)
5224
+ * @returns OverTimeWithTotal
6812
5225
  * @throws ApiError
6813
5226
  */
6814
- static aiFinetuningV1OrgUserDatasetsList({
5227
+ static aiAnalyticsPerlearnerOrgsUsersCoursesOverviewTimeOverTimeRetrieve({
5228
+ courseId,
6815
5229
  org,
6816
- username,
6817
- dateCreated,
6818
- numDataPoints,
6819
- ordering,
6820
- page,
6821
- pageSize,
6822
- retryAttempts,
6823
- search,
6824
- status
5230
+ userId,
5231
+ departmentId,
5232
+ endDate,
5233
+ format = 'json',
5234
+ includeMainPlatform = true,
5235
+ startDate
6825
5236
  }) {
6826
5237
  return request(OpenAPI, {
6827
5238
  method: 'GET',
6828
- url: '/api/ai-finetuning/v1/org/{org}/user/{username}/datasets/',
5239
+ url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/courses/{course_id}/overview/time/over-time',
6829
5240
  path: {
5241
+ 'course_id': courseId,
6830
5242
  'org': org,
6831
- 'username': username
5243
+ 'user_id': userId
6832
5244
  },
6833
5245
  query: {
6834
- 'date_created': dateCreated,
6835
- 'num_data_points': numDataPoints,
6836
- 'ordering': ordering,
6837
- 'page': page,
6838
- 'page_size': pageSize,
6839
- 'retry_attempts': retryAttempts,
6840
- 'search': search,
6841
- 'status': status
5246
+ 'department_id': departmentId,
5247
+ 'end_date': endDate,
5248
+ 'format': format,
5249
+ 'include_main_platform': includeMainPlatform,
5250
+ 'start_date': startDate
6842
5251
  }
6843
5252
  });
6844
5253
  }
6845
5254
  /**
6846
- * Mixin that includes the StudentTokenAuthentication and IsPlatformAdmin
6847
- * @returns DataSetCreate
5255
+ * List of videos within a course a learner has watched
5256
+ *
5257
+ * Kwargs
5258
+ * 1. course_id e.g course-v1:Org+Course4+Run
5259
+ * 2. user_id e.g developer@ibleducation.com or dev123 (username|email)
5260
+ *
5261
+ * Default result when no query param is added is [], 0
5262
+ * @returns PerLearnerCourseVideosWatched
6848
5263
  * @throws ApiError
6849
5264
  */
6850
- static aiFinetuningV1OrgUserDatasetsCreate({
5265
+ static aiAnalyticsPerlearnerOrgsUsersCoursesVideosRetrieve({
5266
+ courseId,
6851
5267
  org,
6852
- username,
6853
- requestBody
5268
+ userId,
5269
+ departmentId,
5270
+ format = 'json',
5271
+ includeMainPlatform = true
6854
5272
  }) {
6855
5273
  return request(OpenAPI, {
6856
- method: 'POST',
6857
- url: '/api/ai-finetuning/v1/org/{org}/user/{username}/datasets/',
5274
+ method: 'GET',
5275
+ url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/courses/{course_id}/videos',
6858
5276
  path: {
5277
+ 'course_id': courseId,
6859
5278
  'org': org,
6860
- 'username': username
5279
+ 'user_id': userId
6861
5280
  },
6862
- body: requestBody,
6863
- mediaType: 'application/json'
5281
+ query: {
5282
+ 'department_id': departmentId,
5283
+ 'format': format,
5284
+ 'include_main_platform': includeMainPlatform
5285
+ }
6864
5286
  });
6865
5287
  }
6866
5288
  /**
6867
- * Mixin that includes the StudentTokenAuthentication and IsPlatformAdmin
6868
- * @returns DataSet
5289
+ * Get video watch counts over time.
5290
+ *
5291
+ * This endpoint provides daily counts of videos watched over a specified time period,
5292
+ * with options to filter by course or user.
5293
+ *
5294
+ * Query Parameters:
5295
+ * start_date (str, optional): Start date for the time range (ISO format)
5296
+ * end_date (str, optional): End date for the time range (ISO format)
5297
+ * course_id (str, optional): Filter by course ID
5298
+ * user_id (str, optional): Filter by username or email
5299
+ *
5300
+ * Returns:
5301
+ * Daily video watch counts over the specified time period.
5302
+ *
5303
+ * Default time range is the last 7 days if no dates are specified.
5304
+ *
5305
+ * Access Control:
5306
+ * - Platform admins can access any video watch data
5307
+ * - Learners can access their own video watch data
5308
+ * @returns OverTimeWithTotal
6869
5309
  * @throws ApiError
6870
5310
  */
6871
- static aiFinetuningV1OrgUserDatasetsRetrieve({
6872
- id,
5311
+ static aiAnalyticsPerlearnerOrgsUsersCoursesVideosOverTimeRetrieve({
5312
+ courseId,
6873
5313
  org,
6874
- username
5314
+ userId,
5315
+ departmentId,
5316
+ endDate,
5317
+ format = 'json',
5318
+ includeMainPlatform = true,
5319
+ startDate
6875
5320
  }) {
6876
5321
  return request(OpenAPI, {
6877
5322
  method: 'GET',
6878
- url: '/api/ai-finetuning/v1/org/{org}/user/{username}/datasets/{id}/',
5323
+ url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/courses/{course_id}/videos/over-time',
6879
5324
  path: {
6880
- 'id': id,
5325
+ 'course_id': courseId,
6881
5326
  'org': org,
6882
- 'username': username
5327
+ 'user_id': userId
5328
+ },
5329
+ query: {
5330
+ 'department_id': departmentId,
5331
+ 'end_date': endDate,
5332
+ 'format': format,
5333
+ 'include_main_platform': includeMainPlatform,
5334
+ 'start_date': startDate
6883
5335
  }
6884
5336
  });
6885
5337
  }
6886
5338
  /**
6887
- * Mixin that includes the StudentTokenAuthentication and IsPlatformAdmin
6888
- * @returns DataSet
5339
+ * Summary Grading Information for a learner on a per-enrollment basis
5340
+ *
5341
+ * Query Params
5342
+ * 1. user_id e.g developer@ibleducation.com or dev123 (username|email)
5343
+ * @returns PerlearnerGradingPerCourseAPI
6889
5344
  * @throws ApiError
6890
5345
  */
6891
- static aiFinetuningV1OrgUserDatasetsUpdate({
6892
- id,
5346
+ static aiAnalyticsPerlearnerOrgsUsersGradesPerCourseRetrieve({
6893
5347
  org,
6894
- username,
6895
- requestBody
5348
+ userId,
5349
+ departmentId,
5350
+ format = 'json',
5351
+ includeMainPlatform = true
6896
5352
  }) {
6897
5353
  return request(OpenAPI, {
6898
- method: 'PUT',
6899
- url: '/api/ai-finetuning/v1/org/{org}/user/{username}/datasets/{id}/',
5354
+ method: 'GET',
5355
+ url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/grades/per-course',
6900
5356
  path: {
6901
- 'id': id,
6902
5357
  'org': org,
6903
- 'username': username
5358
+ 'user_id': userId
6904
5359
  },
6905
- body: requestBody,
6906
- mediaType: 'application/json'
5360
+ query: {
5361
+ 'department_id': departmentId,
5362
+ 'format': format,
5363
+ 'include_main_platform': includeMainPlatform
5364
+ }
6907
5365
  });
6908
5366
  }
6909
5367
  /**
6910
- * Mixin that includes the StudentTokenAuthentication and IsPlatformAdmin
6911
- * @returns DataSet
5368
+ * Retrieve detailed information about a specific learner.
5369
+ *
5370
+ * This endpoint returns personal and activity information about a learner,
5371
+ * including profile data, activity metrics, and location information.
5372
+ *
5373
+ * Path Parameters:
5374
+ * user_id (str): The username or email of the learner
5375
+ *
5376
+ * Query Parameters:
5377
+ * meta (bool): Include additional analytics information when true
5378
+ *
5379
+ * Returns:
5380
+ * Detailed learner information including:
5381
+ * - Profile data (username, name, email)
5382
+ * - Registration and activity dates
5383
+ * - Activity metrics (assessments, time spent, videos watched)
5384
+ * - Location and browser information (when available)
5385
+ *
5386
+ * Access Control:
5387
+ * - Platform admins can access any learner
5388
+ * - Learners can access their own information
5389
+ * - Department admins can access learners in their departments
5390
+ * @returns LearnerInformationAPI
6912
5391
  * @throws ApiError
6913
5392
  */
6914
- static aiFinetuningV1OrgUserDatasetsPartialUpdate({
6915
- id,
5393
+ static aiAnalyticsPerlearnerOrgsUsersInfoRetrieve({
6916
5394
  org,
6917
- username,
6918
- requestBody
5395
+ userId,
5396
+ departmentId,
5397
+ format = 'json',
5398
+ includeMainPlatform = true,
5399
+ meta = 'n',
5400
+ search
6919
5401
  }) {
6920
5402
  return request(OpenAPI, {
6921
- method: 'PATCH',
6922
- url: '/api/ai-finetuning/v1/org/{org}/user/{username}/datasets/{id}/',
5403
+ method: 'GET',
5404
+ url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/info',
6923
5405
  path: {
6924
- 'id': id,
6925
5406
  'org': org,
6926
- 'username': username
5407
+ 'user_id': userId
6927
5408
  },
6928
- body: requestBody,
6929
- mediaType: 'application/json'
5409
+ query: {
5410
+ 'department_id': departmentId,
5411
+ 'format': format,
5412
+ 'include_main_platform': includeMainPlatform,
5413
+ 'meta': meta,
5414
+ 'search': search
5415
+ }
6930
5416
  });
6931
5417
  }
6932
5418
  /**
6933
- * Mixin that includes the StudentTokenAuthentication and IsPlatformAdmin
6934
- * @returns void
5419
+ * Last course accessed by a learner, includes upto unit information as well
5420
+ * @returns PerLearnerLastAccess
6935
5421
  * @throws ApiError
6936
5422
  */
6937
- static aiFinetuningV1OrgUserDatasetsDestroy({
6938
- id,
5423
+ static aiAnalyticsPerlearnerOrgsUsersLastAccessRetrieve({
6939
5424
  org,
6940
- username
5425
+ userId,
5426
+ departmentId,
5427
+ format = 'json',
5428
+ includeMainPlatform = true
6941
5429
  }) {
6942
5430
  return request(OpenAPI, {
6943
- method: 'DELETE',
6944
- url: '/api/ai-finetuning/v1/org/{org}/user/{username}/datasets/{id}/',
5431
+ method: 'GET',
5432
+ url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/last-access',
6945
5433
  path: {
6946
- 'id': id,
6947
5434
  'org': org,
6948
- 'username': username
5435
+ 'user_id': userId
5436
+ },
5437
+ query: {
5438
+ 'department_id': departmentId,
5439
+ 'format': format,
5440
+ 'include_main_platform': includeMainPlatform
6949
5441
  }
6950
5442
  });
6951
5443
  }
6952
5444
  /**
6953
- * Mixin that includes the StudentTokenAuthentication and IsPlatformAdmin
6954
- * @returns PaginatedTrainingList
5445
+ * Average of days with atleast an activity within ENGAGEMENT_INDEX_PERIOD consecutive days
5446
+ * @returns Value
6955
5447
  * @throws ApiError
6956
5448
  */
6957
- static aiFinetuningV1OrgUserTrainingsList({
5449
+ static aiAnalyticsPerlearnerOrgsUsersOverviewEngagementIndexRetrieve({
6958
5450
  org,
6959
- username,
6960
- baseModelName,
6961
- dataset,
6962
- dateCreated,
6963
- fineTunedModel,
6964
- lastModified,
6965
- ordering,
6966
- page,
6967
- pageSize,
6968
- preprocessDataset,
6969
- provider,
6970
- search,
6971
- status
5451
+ userId,
5452
+ departmentId,
5453
+ endDate,
5454
+ format = 'json',
5455
+ includeMainPlatform = true,
5456
+ startDate
6972
5457
  }) {
6973
5458
  return request(OpenAPI, {
6974
5459
  method: 'GET',
6975
- url: '/api/ai-finetuning/v1/org/{org}/user/{username}/trainings/',
5460
+ url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/overview/engagement-index',
6976
5461
  path: {
6977
5462
  'org': org,
6978
- 'username': username
5463
+ 'user_id': userId
6979
5464
  },
6980
5465
  query: {
6981
- 'base_model_name': baseModelName,
6982
- 'dataset': dataset,
6983
- 'date_created': dateCreated,
6984
- 'fine_tuned_model': fineTunedModel,
6985
- 'last_modified': lastModified,
6986
- 'ordering': ordering,
6987
- 'page': page,
6988
- 'page_size': pageSize,
6989
- 'preprocess_dataset': preprocessDataset,
6990
- 'provider': provider,
6991
- 'search': search,
6992
- 'status': status
5466
+ 'department_id': departmentId,
5467
+ 'end_date': endDate,
5468
+ 'format': format,
5469
+ 'include_main_platform': includeMainPlatform,
5470
+ 'start_date': startDate
6993
5471
  }
6994
5472
  });
6995
5473
  }
6996
5474
  /**
6997
- * Mixin that includes the StudentTokenAuthentication and IsPlatformAdmin
6998
- * @returns TrainingCreate
5475
+ * Get average grade value for platform, course, or user.
5476
+ *
5477
+ * This endpoint returns the average grade at different levels:
5478
+ * - Platform level: Average grade across all courses
5479
+ * - Course level: Average grade for a specific course
5480
+ * - Learner level: Average grade for a specific learner
5481
+ * - Course-learner level: Grade for a specific learner in a specific course
5482
+ *
5483
+ * Query Parameters:
5484
+ * course_id (str, optional): Filter by course ID
5485
+ * learner_id (str, optional): Filter by username or email
5486
+ *
5487
+ * Returns:
5488
+ * The average grade value based on the specified filters.
5489
+ *
5490
+ * Access Control:
5491
+ * - Platform admins can access any grade data
5492
+ * - Learners can access their own grade data
5493
+ * @returns Average
6999
5494
  * @throws ApiError
7000
5495
  */
7001
- static aiFinetuningV1OrgUserTrainingsCreate({
5496
+ static aiAnalyticsPerlearnerOrgsUsersOverviewGradesAverageRetrieve({
7002
5497
  org,
7003
- username,
7004
- requestBody
5498
+ userId,
5499
+ departmentId,
5500
+ format = 'json',
5501
+ includeMainPlatform = true
7005
5502
  }) {
7006
5503
  return request(OpenAPI, {
7007
- method: 'POST',
7008
- url: '/api/ai-finetuning/v1/org/{org}/user/{username}/trainings/',
5504
+ method: 'GET',
5505
+ url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/overview/grades/average',
7009
5506
  path: {
7010
5507
  'org': org,
7011
- 'username': username
5508
+ 'user_id': userId
7012
5509
  },
7013
- body: requestBody,
7014
- mediaType: 'application/json'
5510
+ query: {
5511
+ 'department_id': departmentId,
5512
+ 'format': format,
5513
+ 'include_main_platform': includeMainPlatform
5514
+ }
7015
5515
  });
7016
5516
  }
7017
5517
  /**
7018
- * Mixin that includes the StudentTokenAuthentication and IsPlatformAdmin
7019
- * @returns Training
5518
+ * Evaluates performance index for platform, per course, per user and per user-per course
5519
+ *
5520
+ * Query Params
5521
+ * course_id <optional>
5522
+ * learner_id <optional>
5523
+ * @returns Value
7020
5524
  * @throws ApiError
7021
5525
  */
7022
- static aiFinetuningV1OrgUserTrainingsRetrieve({
7023
- id,
5526
+ static aiAnalyticsPerlearnerOrgsUsersOverviewPerformanceIndexRetrieve({
7024
5527
  org,
7025
- username
5528
+ userId,
5529
+ departmentId,
5530
+ endDate,
5531
+ format = 'json',
5532
+ includeMainPlatform = true,
5533
+ startDate
7026
5534
  }) {
7027
5535
  return request(OpenAPI, {
7028
5536
  method: 'GET',
7029
- url: '/api/ai-finetuning/v1/org/{org}/user/{username}/trainings/{id}/',
5537
+ url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/overview/performance-index',
7030
5538
  path: {
7031
- 'id': id,
7032
5539
  'org': org,
7033
- 'username': username
5540
+ 'user_id': userId
5541
+ },
5542
+ query: {
5543
+ 'department_id': departmentId,
5544
+ 'end_date': endDate,
5545
+ 'format': format,
5546
+ 'include_main_platform': includeMainPlatform,
5547
+ 'start_date': startDate
7034
5548
  }
7035
5549
  });
7036
5550
  }
7037
5551
  /**
7038
- * Mixin that includes the StudentTokenAuthentication and IsPlatformAdmin
7039
- * @returns TrainingCreate
5552
+ * Time spent in secs on a per-day basis
5553
+ *
5554
+ * Query Params
5555
+ * 1. course_id <optional> e.g course-v1:Org+Course4+Run
5556
+ * 2. user_id <optional> e.g developer@ibleducation.com or dev123 (username|email)
5557
+ * 3. start_date e.g 2020-10-01
5558
+ * 4. end_date e.g 2020-10-10
5559
+ *
5560
+ * Default result when no query param is added is last_7_days (today inclusive)
5561
+ * @returns OverTimeWithTotal
7040
5562
  * @throws ApiError
7041
5563
  */
7042
- static aiFinetuningV1OrgUserTrainingsUpdate({
7043
- id,
5564
+ static aiAnalyticsPerlearnerOrgsUsersOverviewTimeOverTimeRetrieve({
7044
5565
  org,
7045
- username,
7046
- requestBody
5566
+ userId,
5567
+ departmentId,
5568
+ endDate,
5569
+ format = 'json',
5570
+ includeMainPlatform = true,
5571
+ startDate
7047
5572
  }) {
7048
5573
  return request(OpenAPI, {
7049
- method: 'PUT',
7050
- url: '/api/ai-finetuning/v1/org/{org}/user/{username}/trainings/{id}/',
5574
+ method: 'GET',
5575
+ url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/overview/time/over-time',
7051
5576
  path: {
7052
- 'id': id,
7053
5577
  'org': org,
7054
- 'username': username
5578
+ 'user_id': userId
7055
5579
  },
7056
- body: requestBody,
7057
- mediaType: 'application/json'
5580
+ query: {
5581
+ 'department_id': departmentId,
5582
+ 'end_date': endDate,
5583
+ 'format': format,
5584
+ 'include_main_platform': includeMainPlatform,
5585
+ 'start_date': startDate
5586
+ }
7058
5587
  });
7059
5588
  }
7060
5589
  /**
7061
- * Mixin that includes the StudentTokenAuthentication and IsPlatformAdmin
7062
- * @returns TrainingCreate
5590
+ * Get video watch counts over time.
5591
+ *
5592
+ * This endpoint provides daily counts of videos watched over a specified time period,
5593
+ * with options to filter by course or user.
5594
+ *
5595
+ * Query Parameters:
5596
+ * start_date (str, optional): Start date for the time range (ISO format)
5597
+ * end_date (str, optional): End date for the time range (ISO format)
5598
+ * course_id (str, optional): Filter by course ID
5599
+ * user_id (str, optional): Filter by username or email
5600
+ *
5601
+ * Returns:
5602
+ * Daily video watch counts over the specified time period.
5603
+ *
5604
+ * Default time range is the last 7 days if no dates are specified.
5605
+ *
5606
+ * Access Control:
5607
+ * - Platform admins can access any video watch data
5608
+ * - Learners can access their own video watch data
5609
+ * @returns OverTimeWithTotal
7063
5610
  * @throws ApiError
7064
5611
  */
7065
- static aiFinetuningV1OrgUserTrainingsPartialUpdate({
7066
- id,
5612
+ static aiAnalyticsPerlearnerOrgsUsersVideosOverTimeRetrieve({
7067
5613
  org,
7068
- username,
7069
- requestBody
5614
+ userId,
5615
+ departmentId,
5616
+ endDate,
5617
+ format = 'json',
5618
+ includeMainPlatform = true,
5619
+ startDate
7070
5620
  }) {
7071
5621
  return request(OpenAPI, {
7072
- method: 'PATCH',
7073
- url: '/api/ai-finetuning/v1/org/{org}/user/{username}/trainings/{id}/',
5622
+ method: 'GET',
5623
+ url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/videos/over-time',
7074
5624
  path: {
7075
- 'id': id,
7076
5625
  'org': org,
7077
- 'username': username
5626
+ 'user_id': userId
7078
5627
  },
7079
- body: requestBody,
7080
- mediaType: 'application/json'
5628
+ query: {
5629
+ 'department_id': departmentId,
5630
+ 'end_date': endDate,
5631
+ 'format': format,
5632
+ 'include_main_platform': includeMainPlatform,
5633
+ 'start_date': startDate
5634
+ }
7081
5635
  });
7082
5636
  }
7083
5637
  /**
7084
- * Mixin that includes the StudentTokenAuthentication and IsPlatformAdmin
7085
- * @returns void
5638
+ * Summary Videos watched data for a learner per enrollment
5639
+ *
5640
+ * Query Params
5641
+ * 1. user_id e.g developer@ibleducation.com or dev123 (username|email)
5642
+ * @returns PerlearnerEngagementVideosWatchedPerCourse
7086
5643
  * @throws ApiError
7087
5644
  */
7088
- static aiFinetuningV1OrgUserTrainingsDestroy({
7089
- id,
5645
+ static aiAnalyticsPerlearnerOrgsUsersVideosPerCourseRetrieve({
7090
5646
  org,
7091
- username
5647
+ userId,
5648
+ departmentId,
5649
+ endDate,
5650
+ format = 'json',
5651
+ includeMainPlatform = true,
5652
+ startDate
7092
5653
  }) {
7093
5654
  return request(OpenAPI, {
7094
- method: 'DELETE',
7095
- url: '/api/ai-finetuning/v1/org/{org}/user/{username}/trainings/{id}/',
5655
+ method: 'GET',
5656
+ url: '/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/videos/per-course',
7096
5657
  path: {
7097
- 'id': id,
7098
5658
  'org': org,
7099
- 'username': username
5659
+ 'user_id': userId
5660
+ },
5661
+ query: {
5662
+ 'department_id': departmentId,
5663
+ 'end_date': endDate,
5664
+ 'format': format,
5665
+ 'include_main_platform': includeMainPlatform,
5666
+ 'start_date': startDate
7100
5667
  }
7101
5668
  });
7102
5669
  }
7103
5670
  /**
7104
- * Retrieves a paginated list of completed fine-tuned models, excluding those without a fine-tuned model.
7105
- * Filtering and pagination is allowed.
5671
+ * Get a list of user groups with metrics and filtering options.
5672
+ *
5673
+ * This endpoint provides a paginated list of user groups with aggregated metrics
5674
+ * about learner performance, course completions, and skill acquisition.
5675
+ *
5676
+ * This endpoint uses DM token authentication and respects department-based
5677
+ * access controls.
5678
+ *
5679
+ * Query Parameters:
5680
+ * page (int, optional): Page number for pagination
5681
+ * length (int, optional): Number of items per page
5682
+ * program (str, optional): Filter by program
5683
+ * pathway (str, optional): Filter by pathway
5684
+ * groups (list, optional): Filter by group names
5685
+ * location (str, optional): Filter by location
5686
+ * is_enrolled (bool, optional): Filter for groups with enrolled users
5687
+ * start_date (date, optional): Filter by learner join date (start range)
5688
+ * end_date (date, optional): Filter by learner join date (end range)
7106
5689
  *
7107
- * NB: This is only a helper endpoint. The same functionality can be achieved with the appropriate filters using the
7108
- * training list endpoint.
7109
5690
  * Returns:
7110
- * Response: A paginated response containing the serialized fine-tuned models.
7111
- * @returns Training
5691
+ * A paginated list of user groups with comprehensive metrics.
5692
+ *
5693
+ * Access Control:
5694
+ * - Platform admins can see all groups
5695
+ * - Department admins can only see groups in their departments
5696
+ * @returns GroupList
7112
5697
  * @throws ApiError
7113
5698
  */
7114
- static aiFinetuningV1OrgUserTrainingsFinetunedModelsRetrieve({
5699
+ static aiAnalyticsUserGroupsOrgsRetrieve({
7115
5700
  org,
7116
- username
5701
+ departmentId,
5702
+ endDate,
5703
+ format = 'json',
5704
+ groups,
5705
+ includeMainPlatform = true,
5706
+ isEnrolled,
5707
+ length,
5708
+ location,
5709
+ page,
5710
+ pathway,
5711
+ program,
5712
+ startDate
7117
5713
  }) {
7118
5714
  return request(OpenAPI, {
7119
5715
  method: 'GET',
7120
- url: '/api/ai-finetuning/v1/org/{org}/user/{username}/trainings/finetuned-models/',
5716
+ url: '/api/ai-analytics/user-groups/orgs/{org}/',
7121
5717
  path: {
7122
- 'org': org,
7123
- 'username': username
5718
+ 'org': org
5719
+ },
5720
+ query: {
5721
+ 'department_id': departmentId,
5722
+ 'end_date': endDate,
5723
+ 'format': format,
5724
+ 'groups': groups,
5725
+ 'include_main_platform': includeMainPlatform,
5726
+ 'is_enrolled': isEnrolled,
5727
+ 'length': length,
5728
+ 'location': location,
5729
+ 'page': page,
5730
+ 'pathway': pathway,
5731
+ 'program': program,
5732
+ 'start_date': startDate
7124
5733
  }
7125
5734
  });
7126
5735
  }
@@ -27366,7 +25975,7 @@ class CredentialsService {
27366
25975
  * 403 Forbidden: If the user does not have permission to access this resource
27367
25976
  * 404 Not Found: If the credential doesn't exist
27368
25977
  * 500 Internal Server Error: If an unexpected error occurs
27369
- * @returns Assertion
25978
+ * @returns PaginatedAssertionsResponse
27370
25979
  * @throws ApiError
27371
25980
  */
27372
25981
  static credentialsOrgsUsersAssertionsRetrieve3({
@@ -27507,7 +26116,7 @@ class CredentialsService {
27507
26116
  * 403 Forbidden: If the user does not have permission to access this resource
27508
26117
  * 404 Not Found: If the user or organization doesn't exist
27509
26118
  * 500 Internal Server Error: If an unexpected error occurs
27510
- * @returns Assertion
26119
+ * @returns PaginatedAssertionsResponse
27511
26120
  * @throws ApiError
27512
26121
  */
27513
26122
  static credentialsOrgsUsersAssertionsRetrieve({
@@ -28509,7 +27118,7 @@ class CredentialsService {
28509
27118
  * - If the assertion doesn't exist: Empty response with 404 status
28510
27119
  * - If the assertion has been revoked: JSON with error detail and revocation reason
28511
27120
  * 500 Internal Server Error: If an unexpected error occurs
28512
- * @returns any No response body
27121
+ * @returns Assertion
28513
27122
  * @throws ApiError
28514
27123
  */
28515
27124
  static credentialsPublicAssertionsRetrieve({
@@ -35273,8 +33882,6 @@ class UserGroupsService {
35273
33882
 
35274
33883
  exports.AiAccountService = AiAccountService;
35275
33884
  exports.AiAnalyticsService = AiAnalyticsService;
35276
- exports.AiBotService = AiBotService;
35277
- exports.AiFinetuningService = AiFinetuningService;
35278
33885
  exports.AiIndexService = AiIndexService;
35279
33886
  exports.AiMarketingService = AiMarketingService;
35280
33887
  exports.AiMediaService = AiMediaService;