@examplary/sdk 2.9.0 → 2.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -425,6 +425,26 @@ interface paths {
425
425
  patch?: never;
426
426
  trace?: never;
427
427
  };
428
+ "/exams/{id}/sessions/release-grades": {
429
+ parameters: {
430
+ query?: never;
431
+ header?: never;
432
+ path?: never;
433
+ cookie?: never;
434
+ };
435
+ get?: never;
436
+ put?: never;
437
+ /**
438
+ * Release grades
439
+ * @description Release grades for all sessions in an exam, optionally sending notifications to students.
440
+ */
441
+ post: operations["exams.sessions.releaseGrades"];
442
+ delete?: never;
443
+ options?: never;
444
+ head?: never;
445
+ patch?: never;
446
+ trace?: never;
447
+ };
428
448
  "/exams/{id}/sessions/scan-images": {
429
449
  parameters: {
430
450
  query?: never;
@@ -508,11 +528,31 @@ interface paths {
508
528
  head?: never;
509
529
  /**
510
530
  * Update session
511
- * @description Update an exam session. Currently supports renaming the student, which is not allowed for sessions taken by a signed-in student.
531
+ * @description Update an exam session. Currently supports renaming the student, which is not allowed for sessions connected to a user account.
512
532
  */
513
533
  patch: operations["exams.sessions.update"];
514
534
  trace?: never;
515
535
  };
536
+ "/exams/{id}/sessions/{sessionId}/user": {
537
+ parameters: {
538
+ query?: never;
539
+ header?: never;
540
+ path?: never;
541
+ cookie?: never;
542
+ };
543
+ get?: never;
544
+ /**
545
+ * Assign session to user
546
+ * @description Connect an anonymous exam session to an existing user account. Only allowed when the session is not connected to a user yet.
547
+ */
548
+ put: operations["exams.sessions.assignUser"];
549
+ post?: never;
550
+ delete?: never;
551
+ options?: never;
552
+ head?: never;
553
+ patch?: never;
554
+ trace?: never;
555
+ };
516
556
  "/exams/{id}/sessions/{sessionId}/feedback": {
517
557
  parameters: {
518
558
  query?: never;
@@ -3278,6 +3318,24 @@ interface operations {
3278
3318
  requestBody?: never;
3279
3319
  responses: never;
3280
3320
  };
3321
+ "exams.sessions.releaseGrades": {
3322
+ parameters: {
3323
+ query?: never;
3324
+ header?: never;
3325
+ path: {
3326
+ id: string;
3327
+ };
3328
+ cookie?: never;
3329
+ };
3330
+ requestBody?: {
3331
+ content: {
3332
+ "application/json": {
3333
+ sendNotifications?: boolean;
3334
+ };
3335
+ };
3336
+ };
3337
+ responses: never;
3338
+ };
3281
3339
  "exams.sessions.scanImages": {
3282
3340
  parameters: {
3283
3341
  query?: never;
@@ -3381,6 +3439,25 @@ interface operations {
3381
3439
  };
3382
3440
  responses: never;
3383
3441
  };
3442
+ "exams.sessions.assignUser": {
3443
+ parameters: {
3444
+ query?: never;
3445
+ header?: never;
3446
+ path: {
3447
+ id: string;
3448
+ sessionId: string;
3449
+ };
3450
+ cookie?: never;
3451
+ };
3452
+ requestBody?: {
3453
+ content: {
3454
+ "application/json": {
3455
+ user: string;
3456
+ };
3457
+ };
3458
+ };
3459
+ responses: never;
3460
+ };
3384
3461
  "exams.sessions.saveFeedback": {
3385
3462
  parameters: {
3386
3463
  query?: never;
@@ -3527,6 +3604,8 @@ interface operations {
3527
3604
  inReplyTo?: string;
3528
3605
  /** @enum {string} */
3529
3606
  status?: "open" | "resolved";
3607
+ /** @enum {string} */
3608
+ visibility?: "public" | "private";
3530
3609
  /** @description Question ID the comment is attached to */
3531
3610
  question: string;
3532
3611
  };
@@ -3571,6 +3650,8 @@ interface operations {
3571
3650
  inReplyTo?: string;
3572
3651
  /** @enum {string} */
3573
3652
  status?: "open" | "resolved";
3653
+ /** @enum {string} */
3654
+ visibility?: "public" | "private";
3574
3655
  };
3575
3656
  };
3576
3657
  };
@@ -4423,6 +4504,8 @@ interface operations {
4423
4504
  q: string;
4424
4505
  /** @description Type of entity to search */
4425
4506
  type?: "user" | "group";
4507
+ /** @description Filter by user role */
4508
+ role?: "owner" | "admin" | "teacher" | "student" | "member";
4426
4509
  };
4427
4510
  header?: never;
4428
4511
  path?: never;
@@ -4789,6 +4872,12 @@ interface operations {
4789
4872
  passcode?: string | null;
4790
4873
  startDateTime?: string | null;
4791
4874
  endDateTime?: string | null;
4875
+ reviewPublished?: boolean | null;
4876
+ reviewNotificationsSent?: boolean | null;
4877
+ reviewShowGrade?: boolean | null;
4878
+ reviewShowPoints?: boolean | null;
4879
+ reviewShowFeedback?: boolean | null;
4880
+ reviewShowComments?: boolean | null;
4792
4881
  showPoints?: boolean | null;
4793
4882
  showFeedback?: boolean | null;
4794
4883
  showTableOfContents?: boolean | null;
@@ -4891,6 +4980,12 @@ interface operations {
4891
4980
  passcode?: string | null;
4892
4981
  startDateTime?: string | null;
4893
4982
  endDateTime?: string | null;
4983
+ reviewPublished?: boolean | null;
4984
+ reviewNotificationsSent?: boolean | null;
4985
+ reviewShowGrade?: boolean | null;
4986
+ reviewShowPoints?: boolean | null;
4987
+ reviewShowFeedback?: boolean | null;
4988
+ reviewShowComments?: boolean | null;
4894
4989
  showPoints?: boolean | null;
4895
4990
  showFeedback?: boolean | null;
4896
4991
  showTableOfContents?: boolean | null;
@@ -6443,6 +6538,9 @@ interface _PathOverrides {
6443
6538
  "exams.sessions.scan": {
6444
6539
  examId: string;
6445
6540
  };
6541
+ "exams.sessions.releaseGrades": {
6542
+ examId: string;
6543
+ };
6446
6544
  "exams.sessions.scanImages": {
6447
6545
  examId: string;
6448
6546
  };
@@ -6464,6 +6562,10 @@ interface _PathOverrides {
6464
6562
  examId: string;
6465
6563
  sessionId: string;
6466
6564
  };
6565
+ "exams.sessions.assignUser": {
6566
+ examId: string;
6567
+ sessionId: string;
6568
+ };
6467
6569
  "exams.sessions.saveFeedback": {
6468
6570
  examId: string;
6469
6571
  sessionId: string;
@@ -7046,6 +7148,14 @@ declare class ExamsSessions {
7046
7148
  */
7047
7149
  scan(examId: string, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.scan">>;
7048
7150
  scan(args: Args<"exams.sessions.scan">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.scan">>;
7151
+ /**
7152
+ * Release grades
7153
+ *
7154
+ * Release grades for all sessions in an exam, optionally sending notifications to students.
7155
+ *
7156
+ * API endpoint: `POST /exams/{examId}/sessions/release-grades`
7157
+ */
7158
+ releaseGrades(args: Args<"exams.sessions.releaseGrades">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.releaseGrades">>;
7049
7159
  /**
7050
7160
  * Scan images for student answers
7051
7161
  *
@@ -7089,11 +7199,19 @@ declare class ExamsSessions {
7089
7199
  /**
7090
7200
  * Update session
7091
7201
  *
7092
- * Update an exam session. Currently supports renaming the student, which is not allowed for sessions taken by a signed-in student.
7202
+ * Update an exam session. Currently supports renaming the student, which is not allowed for sessions connected to a user account.
7093
7203
  *
7094
7204
  * API endpoint: `PATCH /exams/{examId}/sessions/{sessionId}`
7095
7205
  */
7096
7206
  update(args: Args<"exams.sessions.update">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.update">>;
7207
+ /**
7208
+ * Assign session to user
7209
+ *
7210
+ * Connect an anonymous exam session to an existing user account. Only allowed when the session is not connected to a user yet.
7211
+ *
7212
+ * API endpoint: `PUT /exams/{examId}/sessions/{sessionId}/user`
7213
+ */
7214
+ assignUser(args: Args<"exams.sessions.assignUser">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.assignUser">>;
7097
7215
  /**
7098
7216
  * Provide feedback
7099
7217
  *
package/dist/index.d.ts CHANGED
@@ -425,6 +425,26 @@ interface paths {
425
425
  patch?: never;
426
426
  trace?: never;
427
427
  };
428
+ "/exams/{id}/sessions/release-grades": {
429
+ parameters: {
430
+ query?: never;
431
+ header?: never;
432
+ path?: never;
433
+ cookie?: never;
434
+ };
435
+ get?: never;
436
+ put?: never;
437
+ /**
438
+ * Release grades
439
+ * @description Release grades for all sessions in an exam, optionally sending notifications to students.
440
+ */
441
+ post: operations["exams.sessions.releaseGrades"];
442
+ delete?: never;
443
+ options?: never;
444
+ head?: never;
445
+ patch?: never;
446
+ trace?: never;
447
+ };
428
448
  "/exams/{id}/sessions/scan-images": {
429
449
  parameters: {
430
450
  query?: never;
@@ -508,11 +528,31 @@ interface paths {
508
528
  head?: never;
509
529
  /**
510
530
  * Update session
511
- * @description Update an exam session. Currently supports renaming the student, which is not allowed for sessions taken by a signed-in student.
531
+ * @description Update an exam session. Currently supports renaming the student, which is not allowed for sessions connected to a user account.
512
532
  */
513
533
  patch: operations["exams.sessions.update"];
514
534
  trace?: never;
515
535
  };
536
+ "/exams/{id}/sessions/{sessionId}/user": {
537
+ parameters: {
538
+ query?: never;
539
+ header?: never;
540
+ path?: never;
541
+ cookie?: never;
542
+ };
543
+ get?: never;
544
+ /**
545
+ * Assign session to user
546
+ * @description Connect an anonymous exam session to an existing user account. Only allowed when the session is not connected to a user yet.
547
+ */
548
+ put: operations["exams.sessions.assignUser"];
549
+ post?: never;
550
+ delete?: never;
551
+ options?: never;
552
+ head?: never;
553
+ patch?: never;
554
+ trace?: never;
555
+ };
516
556
  "/exams/{id}/sessions/{sessionId}/feedback": {
517
557
  parameters: {
518
558
  query?: never;
@@ -3278,6 +3318,24 @@ interface operations {
3278
3318
  requestBody?: never;
3279
3319
  responses: never;
3280
3320
  };
3321
+ "exams.sessions.releaseGrades": {
3322
+ parameters: {
3323
+ query?: never;
3324
+ header?: never;
3325
+ path: {
3326
+ id: string;
3327
+ };
3328
+ cookie?: never;
3329
+ };
3330
+ requestBody?: {
3331
+ content: {
3332
+ "application/json": {
3333
+ sendNotifications?: boolean;
3334
+ };
3335
+ };
3336
+ };
3337
+ responses: never;
3338
+ };
3281
3339
  "exams.sessions.scanImages": {
3282
3340
  parameters: {
3283
3341
  query?: never;
@@ -3381,6 +3439,25 @@ interface operations {
3381
3439
  };
3382
3440
  responses: never;
3383
3441
  };
3442
+ "exams.sessions.assignUser": {
3443
+ parameters: {
3444
+ query?: never;
3445
+ header?: never;
3446
+ path: {
3447
+ id: string;
3448
+ sessionId: string;
3449
+ };
3450
+ cookie?: never;
3451
+ };
3452
+ requestBody?: {
3453
+ content: {
3454
+ "application/json": {
3455
+ user: string;
3456
+ };
3457
+ };
3458
+ };
3459
+ responses: never;
3460
+ };
3384
3461
  "exams.sessions.saveFeedback": {
3385
3462
  parameters: {
3386
3463
  query?: never;
@@ -3527,6 +3604,8 @@ interface operations {
3527
3604
  inReplyTo?: string;
3528
3605
  /** @enum {string} */
3529
3606
  status?: "open" | "resolved";
3607
+ /** @enum {string} */
3608
+ visibility?: "public" | "private";
3530
3609
  /** @description Question ID the comment is attached to */
3531
3610
  question: string;
3532
3611
  };
@@ -3571,6 +3650,8 @@ interface operations {
3571
3650
  inReplyTo?: string;
3572
3651
  /** @enum {string} */
3573
3652
  status?: "open" | "resolved";
3653
+ /** @enum {string} */
3654
+ visibility?: "public" | "private";
3574
3655
  };
3575
3656
  };
3576
3657
  };
@@ -4423,6 +4504,8 @@ interface operations {
4423
4504
  q: string;
4424
4505
  /** @description Type of entity to search */
4425
4506
  type?: "user" | "group";
4507
+ /** @description Filter by user role */
4508
+ role?: "owner" | "admin" | "teacher" | "student" | "member";
4426
4509
  };
4427
4510
  header?: never;
4428
4511
  path?: never;
@@ -4789,6 +4872,12 @@ interface operations {
4789
4872
  passcode?: string | null;
4790
4873
  startDateTime?: string | null;
4791
4874
  endDateTime?: string | null;
4875
+ reviewPublished?: boolean | null;
4876
+ reviewNotificationsSent?: boolean | null;
4877
+ reviewShowGrade?: boolean | null;
4878
+ reviewShowPoints?: boolean | null;
4879
+ reviewShowFeedback?: boolean | null;
4880
+ reviewShowComments?: boolean | null;
4792
4881
  showPoints?: boolean | null;
4793
4882
  showFeedback?: boolean | null;
4794
4883
  showTableOfContents?: boolean | null;
@@ -4891,6 +4980,12 @@ interface operations {
4891
4980
  passcode?: string | null;
4892
4981
  startDateTime?: string | null;
4893
4982
  endDateTime?: string | null;
4983
+ reviewPublished?: boolean | null;
4984
+ reviewNotificationsSent?: boolean | null;
4985
+ reviewShowGrade?: boolean | null;
4986
+ reviewShowPoints?: boolean | null;
4987
+ reviewShowFeedback?: boolean | null;
4988
+ reviewShowComments?: boolean | null;
4894
4989
  showPoints?: boolean | null;
4895
4990
  showFeedback?: boolean | null;
4896
4991
  showTableOfContents?: boolean | null;
@@ -6443,6 +6538,9 @@ interface _PathOverrides {
6443
6538
  "exams.sessions.scan": {
6444
6539
  examId: string;
6445
6540
  };
6541
+ "exams.sessions.releaseGrades": {
6542
+ examId: string;
6543
+ };
6446
6544
  "exams.sessions.scanImages": {
6447
6545
  examId: string;
6448
6546
  };
@@ -6464,6 +6562,10 @@ interface _PathOverrides {
6464
6562
  examId: string;
6465
6563
  sessionId: string;
6466
6564
  };
6565
+ "exams.sessions.assignUser": {
6566
+ examId: string;
6567
+ sessionId: string;
6568
+ };
6467
6569
  "exams.sessions.saveFeedback": {
6468
6570
  examId: string;
6469
6571
  sessionId: string;
@@ -7046,6 +7148,14 @@ declare class ExamsSessions {
7046
7148
  */
7047
7149
  scan(examId: string, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.scan">>;
7048
7150
  scan(args: Args<"exams.sessions.scan">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.scan">>;
7151
+ /**
7152
+ * Release grades
7153
+ *
7154
+ * Release grades for all sessions in an exam, optionally sending notifications to students.
7155
+ *
7156
+ * API endpoint: `POST /exams/{examId}/sessions/release-grades`
7157
+ */
7158
+ releaseGrades(args: Args<"exams.sessions.releaseGrades">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.releaseGrades">>;
7049
7159
  /**
7050
7160
  * Scan images for student answers
7051
7161
  *
@@ -7089,11 +7199,19 @@ declare class ExamsSessions {
7089
7199
  /**
7090
7200
  * Update session
7091
7201
  *
7092
- * Update an exam session. Currently supports renaming the student, which is not allowed for sessions taken by a signed-in student.
7202
+ * Update an exam session. Currently supports renaming the student, which is not allowed for sessions connected to a user account.
7093
7203
  *
7094
7204
  * API endpoint: `PATCH /exams/{examId}/sessions/{sessionId}`
7095
7205
  */
7096
7206
  update(args: Args<"exams.sessions.update">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.update">>;
7207
+ /**
7208
+ * Assign session to user
7209
+ *
7210
+ * Connect an anonymous exam session to an existing user account. Only allowed when the session is not connected to a user yet.
7211
+ *
7212
+ * API endpoint: `PUT /exams/{examId}/sessions/{sessionId}/user`
7213
+ */
7214
+ assignUser(args: Args<"exams.sessions.assignUser">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.assignUser">>;
7097
7215
  /**
7098
7216
  * Provide feedback
7099
7217
  *
package/dist/index.js CHANGED
@@ -326,6 +326,10 @@ var ExamsSessions = class {
326
326
  const args = typeof arg === "string" ? { examId: arg } : arg;
327
327
  return request(this.ctx, "POST", "/exams/{examId}/sessions/scan", ["examId"], [], false, args, options);
328
328
  }
329
+ releaseGrades(arg, options) {
330
+ const args = arg;
331
+ return request(this.ctx, "POST", "/exams/{examId}/sessions/release-grades", ["examId"], [], true, args, options);
332
+ }
329
333
  scanImages(arg, options) {
330
334
  const args = arg;
331
335
  return request(this.ctx, "POST", "/exams/{examId}/sessions/scan-images", ["examId"], [], true, args, options);
@@ -350,6 +354,10 @@ var ExamsSessions = class {
350
354
  const args = arg;
351
355
  return request(this.ctx, "PATCH", "/exams/{examId}/sessions/{sessionId}", ["examId", "sessionId"], [], true, args, options);
352
356
  }
357
+ assignUser(arg, options) {
358
+ const args = arg;
359
+ return request(this.ctx, "PUT", "/exams/{examId}/sessions/{sessionId}/user", ["examId", "sessionId"], [], true, args, options);
360
+ }
353
361
  saveFeedback(arg, options) {
354
362
  const args = arg;
355
363
  return request(this.ctx, "POST", "/exams/{examId}/sessions/{sessionId}/feedback", ["examId", "sessionId"], [], true, args, options);
@@ -619,7 +627,7 @@ var Permissions = class {
619
627
  }
620
628
  autocomplete(arg, options) {
621
629
  const args = arg;
622
- return request(this.ctx, "GET", "/permissions/autocomplete", [], ["q", "type"], false, args, options);
630
+ return request(this.ctx, "GET", "/permissions/autocomplete", [], ["q", "type", "role"], false, args, options);
623
631
  }
624
632
  list(arg, options) {
625
633
  const args = typeof arg === "string" ? { resource: arg } : arg;