@examplary/sdk 2.3.0 → 2.5.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 +1886 -1388
- package/dist/index.d.ts +1886 -1388
- package/dist/index.js +198 -140
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +198 -140
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -381,7 +381,7 @@ interface paths {
|
|
|
381
381
|
patch?: never;
|
|
382
382
|
trace?: never;
|
|
383
383
|
};
|
|
384
|
-
"/
|
|
384
|
+
"/exams/{id}/sessions": {
|
|
385
385
|
parameters: {
|
|
386
386
|
query?: never;
|
|
387
387
|
header?: never;
|
|
@@ -389,121 +389,127 @@ interface paths {
|
|
|
389
389
|
cookie?: never;
|
|
390
390
|
};
|
|
391
391
|
/**
|
|
392
|
-
*
|
|
393
|
-
* @description Get
|
|
392
|
+
* List exam sessions
|
|
393
|
+
* @description Get a list of all student sessions for an exam, representing a set of answers from a student.
|
|
394
394
|
*/
|
|
395
|
-
get: operations["
|
|
395
|
+
get: operations["exams.sessions.list"];
|
|
396
396
|
put?: never;
|
|
397
|
-
|
|
397
|
+
/**
|
|
398
|
+
* Create session
|
|
399
|
+
* @description Manually create a session, possibly from uploaded data.
|
|
400
|
+
*/
|
|
401
|
+
post: operations["exams.sessions.import"];
|
|
398
402
|
delete?: never;
|
|
399
403
|
options?: never;
|
|
400
404
|
head?: never;
|
|
401
|
-
|
|
402
|
-
* Update me
|
|
403
|
-
* @description Update the current user's account details.
|
|
404
|
-
*/
|
|
405
|
-
patch: operations["me.update"];
|
|
405
|
+
patch?: never;
|
|
406
406
|
trace?: never;
|
|
407
407
|
};
|
|
408
|
-
"/
|
|
408
|
+
"/exams/{id}/sessions/scan": {
|
|
409
409
|
parameters: {
|
|
410
410
|
query?: never;
|
|
411
411
|
header?: never;
|
|
412
412
|
path?: never;
|
|
413
413
|
cookie?: never;
|
|
414
414
|
};
|
|
415
|
+
get?: never;
|
|
416
|
+
put?: never;
|
|
415
417
|
/**
|
|
416
|
-
* Get
|
|
417
|
-
* @description
|
|
418
|
+
* Get answers from scan
|
|
419
|
+
* @description Scan student answers from a document.
|
|
418
420
|
*/
|
|
419
|
-
|
|
420
|
-
put?: never;
|
|
421
|
-
post?: never;
|
|
421
|
+
post: operations["exams.sessions.scan"];
|
|
422
422
|
delete?: never;
|
|
423
423
|
options?: never;
|
|
424
424
|
head?: never;
|
|
425
425
|
patch?: never;
|
|
426
426
|
trace?: never;
|
|
427
427
|
};
|
|
428
|
-
"/
|
|
428
|
+
"/exams/{id}/sessions/scan-document": {
|
|
429
429
|
parameters: {
|
|
430
430
|
query?: never;
|
|
431
431
|
header?: never;
|
|
432
432
|
path?: never;
|
|
433
433
|
cookie?: never;
|
|
434
434
|
};
|
|
435
|
-
|
|
436
|
-
get: operations["org.get"];
|
|
435
|
+
get?: never;
|
|
437
436
|
put?: never;
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
437
|
+
/**
|
|
438
|
+
* Scan document for student answers
|
|
439
|
+
* @description Start a background task to extract student answers from an uploaded PDF document.
|
|
440
|
+
*/
|
|
441
|
+
post: operations["exams.sessions.scanDocument"];
|
|
442
|
+
delete?: never;
|
|
441
443
|
options?: never;
|
|
442
444
|
head?: never;
|
|
443
|
-
|
|
444
|
-
patch: operations["org.update"];
|
|
445
|
+
patch?: never;
|
|
445
446
|
trace?: never;
|
|
446
447
|
};
|
|
447
|
-
"/
|
|
448
|
+
"/exams/{id}/sessions/{sessionId}": {
|
|
448
449
|
parameters: {
|
|
449
450
|
query?: never;
|
|
450
451
|
header?: never;
|
|
451
452
|
path?: never;
|
|
452
453
|
cookie?: never;
|
|
453
454
|
};
|
|
454
|
-
/**
|
|
455
|
-
|
|
455
|
+
/**
|
|
456
|
+
* Get exam session
|
|
457
|
+
* @description Get a single exam session by its ID, representing a set of answers from a student.
|
|
458
|
+
*/
|
|
459
|
+
get: operations["exams.sessions.get"];
|
|
456
460
|
put?: never;
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
461
|
+
post?: never;
|
|
462
|
+
/**
|
|
463
|
+
* Delete exam session
|
|
464
|
+
* @description Remove an exam session.
|
|
465
|
+
*/
|
|
466
|
+
delete: operations["exams.sessions.delete"];
|
|
460
467
|
options?: never;
|
|
461
468
|
head?: never;
|
|
462
469
|
patch?: never;
|
|
463
470
|
trace?: never;
|
|
464
471
|
};
|
|
465
|
-
"/
|
|
472
|
+
"/exams/{id}/sessions/{sessionId}/feedback": {
|
|
466
473
|
parameters: {
|
|
467
474
|
query?: never;
|
|
468
475
|
header?: never;
|
|
469
476
|
path?: never;
|
|
470
477
|
cookie?: never;
|
|
471
478
|
};
|
|
472
|
-
|
|
473
|
-
get: operations["orgs.list"];
|
|
479
|
+
get?: never;
|
|
474
480
|
put?: never;
|
|
475
481
|
/**
|
|
476
|
-
*
|
|
477
|
-
* @description
|
|
482
|
+
* Provide feedback
|
|
483
|
+
* @description Set teacher feedback and/or a grade for a specific question in an exam session.
|
|
478
484
|
*/
|
|
479
|
-
post: operations["
|
|
485
|
+
post: operations["exams.sessions.saveFeedback"];
|
|
480
486
|
delete?: never;
|
|
481
487
|
options?: never;
|
|
482
488
|
head?: never;
|
|
483
489
|
patch?: never;
|
|
484
490
|
trace?: never;
|
|
485
491
|
};
|
|
486
|
-
"/
|
|
492
|
+
"/exams/{id}/sessions/{sessionId}/overall-feedback": {
|
|
487
493
|
parameters: {
|
|
488
494
|
query?: never;
|
|
489
495
|
header?: never;
|
|
490
496
|
path?: never;
|
|
491
497
|
cookie?: never;
|
|
492
498
|
};
|
|
499
|
+
get?: never;
|
|
500
|
+
put?: never;
|
|
493
501
|
/**
|
|
494
|
-
*
|
|
495
|
-
* @description
|
|
502
|
+
* Provide overall feedback
|
|
503
|
+
* @description Set teacher feedback for the test as a whole in an exam session.
|
|
496
504
|
*/
|
|
497
|
-
|
|
498
|
-
put?: never;
|
|
499
|
-
post?: never;
|
|
505
|
+
post: operations["exams.sessions.saveOverallFeedback"];
|
|
500
506
|
delete?: never;
|
|
501
507
|
options?: never;
|
|
502
508
|
head?: never;
|
|
503
509
|
patch?: never;
|
|
504
510
|
trace?: never;
|
|
505
511
|
};
|
|
506
|
-
"/
|
|
512
|
+
"/exams/{id}/sessions/{sessionId}/generate-overall-feedback": {
|
|
507
513
|
parameters: {
|
|
508
514
|
query?: never;
|
|
509
515
|
header?: never;
|
|
@@ -513,41 +519,37 @@ interface paths {
|
|
|
513
519
|
get?: never;
|
|
514
520
|
put?: never;
|
|
515
521
|
/**
|
|
516
|
-
*
|
|
517
|
-
* @description
|
|
522
|
+
* Generate overall feedback
|
|
523
|
+
* @description Generate feedback for the test as a whole in an exam session.
|
|
518
524
|
*/
|
|
519
|
-
post: operations["
|
|
525
|
+
post: operations["exams.sessions.generateOverallFeedback"];
|
|
520
526
|
delete?: never;
|
|
521
527
|
options?: never;
|
|
522
528
|
head?: never;
|
|
523
529
|
patch?: never;
|
|
524
530
|
trace?: never;
|
|
525
531
|
};
|
|
526
|
-
"/
|
|
532
|
+
"/exams/{id}/sessions/{sessionId}/suggestions/accept-all": {
|
|
527
533
|
parameters: {
|
|
528
534
|
query?: never;
|
|
529
535
|
header?: never;
|
|
530
536
|
path?: never;
|
|
531
537
|
cookie?: never;
|
|
532
538
|
};
|
|
533
|
-
|
|
534
|
-
* List attributes
|
|
535
|
-
* @description Get all custom attributes configured for the current workspace.
|
|
536
|
-
*/
|
|
537
|
-
get: operations["attributes.list"];
|
|
539
|
+
get?: never;
|
|
538
540
|
put?: never;
|
|
539
541
|
/**
|
|
540
|
-
*
|
|
541
|
-
* @description
|
|
542
|
+
* Accept AI grading suggestions
|
|
543
|
+
* @description Accept all AI-generated grading suggestions for the exam session.
|
|
542
544
|
*/
|
|
543
|
-
post: operations["
|
|
545
|
+
post: operations["exams.sessions.acceptAllSuggestions"];
|
|
544
546
|
delete?: never;
|
|
545
547
|
options?: never;
|
|
546
548
|
head?: never;
|
|
547
549
|
patch?: never;
|
|
548
550
|
trace?: never;
|
|
549
551
|
};
|
|
550
|
-
"/
|
|
552
|
+
"/exams/{id}/sessions/{sessionId}/suggestions/{questionId}/accept": {
|
|
551
553
|
parameters: {
|
|
552
554
|
query?: never;
|
|
553
555
|
header?: never;
|
|
@@ -557,17 +559,17 @@ interface paths {
|
|
|
557
559
|
get?: never;
|
|
558
560
|
put?: never;
|
|
559
561
|
/**
|
|
560
|
-
*
|
|
561
|
-
* @description
|
|
562
|
+
* Accept single AI grading suggestion
|
|
563
|
+
* @description Accept a single AI-generated grading suggestion for the exam session.
|
|
562
564
|
*/
|
|
563
|
-
post: operations["
|
|
565
|
+
post: operations["exams.sessions.acceptSuggestion"];
|
|
564
566
|
delete?: never;
|
|
565
567
|
options?: never;
|
|
566
568
|
head?: never;
|
|
567
569
|
patch?: never;
|
|
568
570
|
trace?: never;
|
|
569
571
|
};
|
|
570
|
-
"/
|
|
572
|
+
"/exams/{id}/sessions/{sessionId}/answers/{questionId}": {
|
|
571
573
|
parameters: {
|
|
572
574
|
query?: never;
|
|
573
575
|
header?: never;
|
|
@@ -576,22 +578,18 @@ interface paths {
|
|
|
576
578
|
};
|
|
577
579
|
get?: never;
|
|
578
580
|
put?: never;
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
* @description Update an existing attribute in the current workspace.
|
|
582
|
-
*/
|
|
583
|
-
post: operations["attributes.update"];
|
|
584
|
-
/**
|
|
585
|
-
* Delete attribute
|
|
586
|
-
* @description Delete a custom attribute from the current workspace. Default attributes cannot be deleted.
|
|
587
|
-
*/
|
|
588
|
-
delete: operations["attributes.delete"];
|
|
581
|
+
post?: never;
|
|
582
|
+
delete?: never;
|
|
589
583
|
options?: never;
|
|
590
584
|
head?: never;
|
|
591
|
-
|
|
585
|
+
/**
|
|
586
|
+
* Edit answer
|
|
587
|
+
* @description Edit a single answer in an exam session.
|
|
588
|
+
*/
|
|
589
|
+
patch: operations["exams.sessions.editAnswer"];
|
|
592
590
|
trace?: never;
|
|
593
591
|
};
|
|
594
|
-
"/
|
|
592
|
+
"/exams/{id}/sessions/{sessionId}/comments": {
|
|
595
593
|
parameters: {
|
|
596
594
|
query?: never;
|
|
597
595
|
header?: never;
|
|
@@ -599,23 +597,23 @@ interface paths {
|
|
|
599
597
|
cookie?: never;
|
|
600
598
|
};
|
|
601
599
|
/**
|
|
602
|
-
*
|
|
603
|
-
* @description Get a list
|
|
600
|
+
* List session comments
|
|
601
|
+
* @description Get a list of all comments left on a student's assessment session.
|
|
604
602
|
*/
|
|
605
|
-
get: operations["
|
|
603
|
+
get: operations["exams.sessions.comments.list"];
|
|
606
604
|
put?: never;
|
|
607
605
|
/**
|
|
608
|
-
* Create
|
|
609
|
-
* @description
|
|
606
|
+
* Create session comment
|
|
607
|
+
* @description Add a new comment to a question in a student's assessment session.
|
|
610
608
|
*/
|
|
611
|
-
post: operations["
|
|
609
|
+
post: operations["exams.sessions.comments.create"];
|
|
612
610
|
delete?: never;
|
|
613
611
|
options?: never;
|
|
614
612
|
head?: never;
|
|
615
613
|
patch?: never;
|
|
616
614
|
trace?: never;
|
|
617
615
|
};
|
|
618
|
-
"/
|
|
616
|
+
"/exams/{id}/sessions/{sessionId}/comments/{commentId}": {
|
|
619
617
|
parameters: {
|
|
620
618
|
query?: never;
|
|
621
619
|
header?: never;
|
|
@@ -624,66 +622,62 @@ interface paths {
|
|
|
624
622
|
};
|
|
625
623
|
get?: never;
|
|
626
624
|
put?: never;
|
|
625
|
+
post?: never;
|
|
627
626
|
/**
|
|
628
|
-
*
|
|
629
|
-
* @description
|
|
630
|
-
*/
|
|
631
|
-
post: operations["taxonomies.update"];
|
|
632
|
-
/**
|
|
633
|
-
* Delete taxonomy
|
|
634
|
-
* @description Delete a taxonomy from the current workspace. This fails if there are any exams associated with the taxonomy.
|
|
627
|
+
* Delete session comment
|
|
628
|
+
* @description Remove a comment from a session.
|
|
635
629
|
*/
|
|
636
|
-
delete: operations["
|
|
630
|
+
delete: operations["exams.sessions.comments.delete"];
|
|
637
631
|
options?: never;
|
|
638
632
|
head?: never;
|
|
639
|
-
|
|
633
|
+
/**
|
|
634
|
+
* Update session comment
|
|
635
|
+
* @description Edit the body of an existing session comment.
|
|
636
|
+
*/
|
|
637
|
+
patch: operations["exams.sessions.comments.update"];
|
|
640
638
|
trace?: never;
|
|
641
639
|
};
|
|
642
|
-
"/
|
|
640
|
+
"/exams/{id}/questions/import": {
|
|
643
641
|
parameters: {
|
|
644
642
|
query?: never;
|
|
645
643
|
header?: never;
|
|
646
644
|
path?: never;
|
|
647
645
|
cookie?: never;
|
|
648
646
|
};
|
|
647
|
+
get?: never;
|
|
648
|
+
put?: never;
|
|
649
649
|
/**
|
|
650
|
-
*
|
|
651
|
-
* @description
|
|
650
|
+
* Import questions
|
|
651
|
+
* @description Import questions into an exam from a file. Support Word, PDF, Moodle quiz XML and plain text files.
|
|
652
652
|
*/
|
|
653
|
-
|
|
654
|
-
put?: never;
|
|
655
|
-
post?: never;
|
|
653
|
+
post: operations["exams.questions.import"];
|
|
656
654
|
delete?: never;
|
|
657
655
|
options?: never;
|
|
658
656
|
head?: never;
|
|
659
657
|
patch?: never;
|
|
660
658
|
trace?: never;
|
|
661
659
|
};
|
|
662
|
-
"/
|
|
660
|
+
"/exams/{id}/questions/generate": {
|
|
663
661
|
parameters: {
|
|
664
662
|
query?: never;
|
|
665
663
|
header?: never;
|
|
666
664
|
path?: never;
|
|
667
665
|
cookie?: never;
|
|
668
666
|
};
|
|
669
|
-
|
|
670
|
-
* Get sharing permissions
|
|
671
|
-
* @description Get a list of users, groups and orgs that have access to a specific resource.
|
|
672
|
-
*/
|
|
673
|
-
get: operations["permissions.list"];
|
|
667
|
+
get?: never;
|
|
674
668
|
put?: never;
|
|
675
669
|
/**
|
|
676
|
-
*
|
|
677
|
-
* @description
|
|
670
|
+
* Generate question
|
|
671
|
+
* @description Generate a new question for the exam using an AI prompt.
|
|
678
672
|
*/
|
|
679
|
-
post: operations["
|
|
673
|
+
post: operations["exams.questions.generate"];
|
|
680
674
|
delete?: never;
|
|
681
675
|
options?: never;
|
|
682
676
|
head?: never;
|
|
683
677
|
patch?: never;
|
|
684
678
|
trace?: never;
|
|
685
679
|
};
|
|
686
|
-
"/
|
|
680
|
+
"/exams/{id}/questions/{questionId}": {
|
|
687
681
|
parameters: {
|
|
688
682
|
query?: never;
|
|
689
683
|
header?: never;
|
|
@@ -691,67 +685,59 @@ interface paths {
|
|
|
691
685
|
cookie?: never;
|
|
692
686
|
};
|
|
693
687
|
/**
|
|
694
|
-
* Get
|
|
695
|
-
* @description
|
|
688
|
+
* Get question
|
|
689
|
+
* @description Retrieve a question by its ID.
|
|
696
690
|
*/
|
|
697
|
-
get: operations["
|
|
691
|
+
get: operations["exams.questions.get"];
|
|
698
692
|
put?: never;
|
|
699
693
|
post?: never;
|
|
700
|
-
|
|
701
|
-
* Remove permission
|
|
702
|
-
* @description Remove a permission for a specific actor on a specific resource.
|
|
703
|
-
*/
|
|
704
|
-
delete: operations["permissions.delete"];
|
|
694
|
+
delete?: never;
|
|
705
695
|
options?: never;
|
|
706
696
|
head?: never;
|
|
707
697
|
patch?: never;
|
|
708
698
|
trace?: never;
|
|
709
699
|
};
|
|
710
|
-
"/
|
|
700
|
+
"/exams/{id}/questions/{questionId}/generate": {
|
|
711
701
|
parameters: {
|
|
712
702
|
query?: never;
|
|
713
703
|
header?: never;
|
|
714
704
|
path?: never;
|
|
715
705
|
cookie?: never;
|
|
716
706
|
};
|
|
707
|
+
get?: never;
|
|
708
|
+
put?: never;
|
|
717
709
|
/**
|
|
718
|
-
*
|
|
719
|
-
* @description
|
|
710
|
+
* Regenerate question
|
|
711
|
+
* @description Update a question using an AI prompt.
|
|
720
712
|
*/
|
|
721
|
-
|
|
722
|
-
put?: never;
|
|
723
|
-
post?: never;
|
|
713
|
+
post: operations["exams.questions.regenerate"];
|
|
724
714
|
delete?: never;
|
|
725
715
|
options?: never;
|
|
726
716
|
head?: never;
|
|
727
717
|
patch?: never;
|
|
728
718
|
trace?: never;
|
|
729
719
|
};
|
|
730
|
-
"/
|
|
720
|
+
"/exams/{id}/export/qti3-zip": {
|
|
731
721
|
parameters: {
|
|
732
722
|
query?: never;
|
|
733
723
|
header?: never;
|
|
734
724
|
path?: never;
|
|
735
725
|
cookie?: never;
|
|
736
726
|
};
|
|
737
|
-
|
|
738
|
-
* List users
|
|
739
|
-
* @description Get a list of all users in the workspace.
|
|
740
|
-
*/
|
|
741
|
-
get: operations["users.list"];
|
|
727
|
+
get?: never;
|
|
742
728
|
put?: never;
|
|
743
729
|
/**
|
|
744
|
-
*
|
|
745
|
-
* @description
|
|
730
|
+
* Export QTI 3 package
|
|
731
|
+
* @description Export an exam as a QTI 3 ZIP package.
|
|
746
732
|
*/
|
|
747
|
-
post: operations["
|
|
733
|
+
post: operations["exams.export.qti3Zip"];
|
|
748
734
|
delete?: never;
|
|
749
735
|
options?: never;
|
|
750
736
|
head?: never;
|
|
751
737
|
patch?: never;
|
|
752
738
|
trace?: never;
|
|
753
739
|
};
|
|
754
|
-
"/
|
|
740
|
+
"/exams/{id}/export/qti21-zip": {
|
|
755
741
|
parameters: {
|
|
756
742
|
query?: never;
|
|
757
743
|
header?: never;
|
|
@@ -760,22 +746,18 @@ interface paths {
|
|
|
760
746
|
};
|
|
761
747
|
get?: never;
|
|
762
748
|
put?: never;
|
|
763
|
-
post?: never;
|
|
764
749
|
/**
|
|
765
|
-
*
|
|
766
|
-
* @description
|
|
750
|
+
* Export QTI 2.1 package
|
|
751
|
+
* @description Export an exam as a QTI 2.1 ZIP package.
|
|
767
752
|
*/
|
|
768
|
-
|
|
753
|
+
post: operations["exams.export.qti21Zip"];
|
|
754
|
+
delete?: never;
|
|
769
755
|
options?: never;
|
|
770
756
|
head?: never;
|
|
771
|
-
|
|
772
|
-
* Update user role
|
|
773
|
-
* @description Update a user's role within the workspace.
|
|
774
|
-
*/
|
|
775
|
-
patch: operations["users.update"];
|
|
757
|
+
patch?: never;
|
|
776
758
|
trace?: never;
|
|
777
759
|
};
|
|
778
|
-
"/exams
|
|
760
|
+
"/exams": {
|
|
779
761
|
parameters: {
|
|
780
762
|
query?: never;
|
|
781
763
|
header?: never;
|
|
@@ -783,23 +765,23 @@ interface paths {
|
|
|
783
765
|
cookie?: never;
|
|
784
766
|
};
|
|
785
767
|
/**
|
|
786
|
-
* List
|
|
787
|
-
* @description Get a list of all
|
|
768
|
+
* List exams
|
|
769
|
+
* @description Get a list of all exams within your workspace.
|
|
788
770
|
*/
|
|
789
|
-
get: operations["exams.
|
|
771
|
+
get: operations["exams.list"];
|
|
790
772
|
put?: never;
|
|
791
773
|
/**
|
|
792
|
-
* Create
|
|
793
|
-
* @description
|
|
774
|
+
* Create exam
|
|
775
|
+
* @description Create a new exam within your workspace.
|
|
794
776
|
*/
|
|
795
|
-
post: operations["exams.
|
|
777
|
+
post: operations["exams.create"];
|
|
796
778
|
delete?: never;
|
|
797
779
|
options?: never;
|
|
798
780
|
head?: never;
|
|
799
781
|
patch?: never;
|
|
800
782
|
trace?: never;
|
|
801
783
|
};
|
|
802
|
-
"/exams/
|
|
784
|
+
"/exams/import": {
|
|
803
785
|
parameters: {
|
|
804
786
|
query?: never;
|
|
805
787
|
header?: never;
|
|
@@ -809,61 +791,45 @@ interface paths {
|
|
|
809
791
|
get?: never;
|
|
810
792
|
put?: never;
|
|
811
793
|
/**
|
|
812
|
-
*
|
|
813
|
-
* @description
|
|
794
|
+
* Import exam
|
|
795
|
+
* @description Create an exam by importing one or more source materials (e.g. an existing exam).
|
|
814
796
|
*/
|
|
815
|
-
post: operations["exams.
|
|
797
|
+
post: operations["exams.import"];
|
|
816
798
|
delete?: never;
|
|
817
799
|
options?: never;
|
|
818
800
|
head?: never;
|
|
819
801
|
patch?: never;
|
|
820
802
|
trace?: never;
|
|
821
803
|
};
|
|
822
|
-
"/exams/{id}
|
|
804
|
+
"/exams/{id}": {
|
|
823
805
|
parameters: {
|
|
824
806
|
query?: never;
|
|
825
807
|
header?: never;
|
|
826
808
|
path?: never;
|
|
827
809
|
cookie?: never;
|
|
828
810
|
};
|
|
829
|
-
get?: never;
|
|
830
|
-
put?: never;
|
|
831
811
|
/**
|
|
832
|
-
*
|
|
833
|
-
* @description
|
|
812
|
+
* Get exam
|
|
813
|
+
* @description Get a single exam by its ID.
|
|
834
814
|
*/
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
options?: never;
|
|
838
|
-
head?: never;
|
|
839
|
-
patch?: never;
|
|
840
|
-
trace?: never;
|
|
841
|
-
};
|
|
842
|
-
"/exams/{id}/sessions/{sessionId}": {
|
|
843
|
-
parameters: {
|
|
844
|
-
query?: never;
|
|
845
|
-
header?: never;
|
|
846
|
-
path?: never;
|
|
847
|
-
cookie?: never;
|
|
848
|
-
};
|
|
815
|
+
get: operations["exams.get"];
|
|
816
|
+
put?: never;
|
|
849
817
|
/**
|
|
850
|
-
*
|
|
851
|
-
* @description
|
|
818
|
+
* Update exam
|
|
819
|
+
* @description Update an existing exam.
|
|
852
820
|
*/
|
|
853
|
-
|
|
854
|
-
put?: never;
|
|
855
|
-
post?: never;
|
|
821
|
+
post: operations["exams.update"];
|
|
856
822
|
/**
|
|
857
|
-
* Delete exam
|
|
858
|
-
* @description
|
|
823
|
+
* Delete exam
|
|
824
|
+
* @description Delete the exam.
|
|
859
825
|
*/
|
|
860
|
-
delete: operations["exams.
|
|
826
|
+
delete: operations["exams.delete"];
|
|
861
827
|
options?: never;
|
|
862
828
|
head?: never;
|
|
863
829
|
patch?: never;
|
|
864
830
|
trace?: never;
|
|
865
831
|
};
|
|
866
|
-
"/exams/{id}/
|
|
832
|
+
"/exams/{id}/duplicate": {
|
|
867
833
|
parameters: {
|
|
868
834
|
query?: never;
|
|
869
835
|
header?: never;
|
|
@@ -873,17 +839,17 @@ interface paths {
|
|
|
873
839
|
get?: never;
|
|
874
840
|
put?: never;
|
|
875
841
|
/**
|
|
876
|
-
*
|
|
877
|
-
* @description
|
|
842
|
+
* Duplicate exam
|
|
843
|
+
* @description Duplicate the exam's questions and settings to a new exam.
|
|
878
844
|
*/
|
|
879
|
-
post: operations["exams.
|
|
845
|
+
post: operations["exams.duplicate"];
|
|
880
846
|
delete?: never;
|
|
881
847
|
options?: never;
|
|
882
848
|
head?: never;
|
|
883
849
|
patch?: never;
|
|
884
850
|
trace?: never;
|
|
885
851
|
};
|
|
886
|
-
"/exams/{id}/
|
|
852
|
+
"/exams/{id}/print": {
|
|
887
853
|
parameters: {
|
|
888
854
|
query?: never;
|
|
889
855
|
header?: never;
|
|
@@ -893,17 +859,17 @@ interface paths {
|
|
|
893
859
|
get?: never;
|
|
894
860
|
put?: never;
|
|
895
861
|
/**
|
|
896
|
-
*
|
|
897
|
-
* @description
|
|
862
|
+
* Print exam
|
|
863
|
+
* @description Export an exam to a PDF file or Word document.
|
|
898
864
|
*/
|
|
899
|
-
post: operations["exams.
|
|
865
|
+
post: operations["exams.print"];
|
|
900
866
|
delete?: never;
|
|
901
867
|
options?: never;
|
|
902
868
|
head?: never;
|
|
903
869
|
patch?: never;
|
|
904
870
|
trace?: never;
|
|
905
871
|
};
|
|
906
|
-
"/exams/{id}/
|
|
872
|
+
"/exams/{id}/generate": {
|
|
907
873
|
parameters: {
|
|
908
874
|
query?: never;
|
|
909
875
|
header?: never;
|
|
@@ -913,17 +879,17 @@ interface paths {
|
|
|
913
879
|
get?: never;
|
|
914
880
|
put?: never;
|
|
915
881
|
/**
|
|
916
|
-
* Generate
|
|
917
|
-
* @description
|
|
882
|
+
* Generate exam
|
|
883
|
+
* @description Initiate a job to generate new questions for the exam using AI, based on the source materials and metadata specified.
|
|
918
884
|
*/
|
|
919
|
-
post: operations["exams.
|
|
885
|
+
post: operations["exams.startGeneration"];
|
|
920
886
|
delete?: never;
|
|
921
887
|
options?: never;
|
|
922
888
|
head?: never;
|
|
923
889
|
patch?: never;
|
|
924
890
|
trace?: never;
|
|
925
891
|
};
|
|
926
|
-
"/exams/{id}/
|
|
892
|
+
"/exams/{id}/generate/cancel": {
|
|
927
893
|
parameters: {
|
|
928
894
|
query?: never;
|
|
929
895
|
header?: never;
|
|
@@ -933,177 +899,179 @@ interface paths {
|
|
|
933
899
|
get?: never;
|
|
934
900
|
put?: never;
|
|
935
901
|
/**
|
|
936
|
-
*
|
|
937
|
-
* @description
|
|
902
|
+
* Cancel exam generation
|
|
903
|
+
* @description Cancel an ongoing job to generate new questions for the exam using AI.
|
|
938
904
|
*/
|
|
939
|
-
post: operations["exams.
|
|
905
|
+
post: operations["exams.cancelGeneration"];
|
|
940
906
|
delete?: never;
|
|
941
907
|
options?: never;
|
|
942
908
|
head?: never;
|
|
943
909
|
patch?: never;
|
|
944
910
|
trace?: never;
|
|
945
911
|
};
|
|
946
|
-
"/exams/{id}/
|
|
912
|
+
"/exams/{id}/context-suggestions": {
|
|
947
913
|
parameters: {
|
|
948
914
|
query?: never;
|
|
949
915
|
header?: never;
|
|
950
916
|
path?: never;
|
|
951
917
|
cookie?: never;
|
|
952
918
|
};
|
|
953
|
-
get?: never;
|
|
954
|
-
put?: never;
|
|
955
919
|
/**
|
|
956
|
-
*
|
|
957
|
-
* @description
|
|
920
|
+
* Get exam context suggestions
|
|
921
|
+
* @description Get AI-generated suggestions for context/instructions to include in the exam generation prompt, based on the source materials linked to the exam.
|
|
958
922
|
*/
|
|
959
|
-
|
|
923
|
+
get: operations["exams.getContextSuggestions"];
|
|
924
|
+
put?: never;
|
|
925
|
+
post?: never;
|
|
960
926
|
delete?: never;
|
|
961
927
|
options?: never;
|
|
962
928
|
head?: never;
|
|
963
929
|
patch?: never;
|
|
964
930
|
trace?: never;
|
|
965
931
|
};
|
|
966
|
-
"/
|
|
932
|
+
"/me": {
|
|
967
933
|
parameters: {
|
|
968
934
|
query?: never;
|
|
969
935
|
header?: never;
|
|
970
936
|
path?: never;
|
|
971
937
|
cookie?: never;
|
|
972
938
|
};
|
|
973
|
-
|
|
939
|
+
/**
|
|
940
|
+
* Get me
|
|
941
|
+
* @description Get the current user's account details.
|
|
942
|
+
*/
|
|
943
|
+
get: operations["me.get"];
|
|
974
944
|
put?: never;
|
|
975
945
|
post?: never;
|
|
976
946
|
delete?: never;
|
|
977
947
|
options?: never;
|
|
978
948
|
head?: never;
|
|
979
949
|
/**
|
|
980
|
-
*
|
|
981
|
-
* @description
|
|
950
|
+
* Update me
|
|
951
|
+
* @description Update the current user's account details.
|
|
982
952
|
*/
|
|
983
|
-
patch: operations["
|
|
953
|
+
patch: operations["me.update"];
|
|
984
954
|
trace?: never;
|
|
985
955
|
};
|
|
986
|
-
"/
|
|
956
|
+
"/media/upload": {
|
|
987
957
|
parameters: {
|
|
988
958
|
query?: never;
|
|
989
959
|
header?: never;
|
|
990
960
|
path?: never;
|
|
991
961
|
cookie?: never;
|
|
992
962
|
};
|
|
993
|
-
get?: never;
|
|
994
|
-
put?: never;
|
|
995
963
|
/**
|
|
996
|
-
*
|
|
997
|
-
* @description
|
|
964
|
+
* Get file upload URL
|
|
965
|
+
* @description Returns a signed URL for uploading a file, and a public URL for accessing it afterwards.
|
|
998
966
|
*/
|
|
999
|
-
|
|
967
|
+
get: operations["media.upload"];
|
|
968
|
+
put?: never;
|
|
969
|
+
post?: never;
|
|
1000
970
|
delete?: never;
|
|
1001
971
|
options?: never;
|
|
1002
972
|
head?: never;
|
|
1003
973
|
patch?: never;
|
|
1004
974
|
trace?: never;
|
|
1005
975
|
};
|
|
1006
|
-
"/
|
|
976
|
+
"/org": {
|
|
1007
977
|
parameters: {
|
|
1008
978
|
query?: never;
|
|
1009
979
|
header?: never;
|
|
1010
980
|
path?: never;
|
|
1011
981
|
cookie?: never;
|
|
1012
982
|
};
|
|
1013
|
-
|
|
983
|
+
/** Get organization */
|
|
984
|
+
get: operations["org.get"];
|
|
1014
985
|
put?: never;
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
*/
|
|
1019
|
-
post: operations["exams.questions.generate"];
|
|
1020
|
-
delete?: never;
|
|
986
|
+
post?: never;
|
|
987
|
+
/** Delete organization */
|
|
988
|
+
delete: operations["org.delete"];
|
|
1021
989
|
options?: never;
|
|
1022
990
|
head?: never;
|
|
1023
|
-
|
|
991
|
+
/** Update organization */
|
|
992
|
+
patch: operations["org.update"];
|
|
1024
993
|
trace?: never;
|
|
1025
994
|
};
|
|
1026
|
-
"/
|
|
995
|
+
"/org/custom-domain": {
|
|
1027
996
|
parameters: {
|
|
1028
997
|
query?: never;
|
|
1029
998
|
header?: never;
|
|
1030
999
|
path?: never;
|
|
1031
1000
|
cookie?: never;
|
|
1032
1001
|
};
|
|
1033
|
-
/**
|
|
1034
|
-
|
|
1035
|
-
* @description Retrieve a question by its ID.
|
|
1036
|
-
*/
|
|
1037
|
-
get: operations["exams.questions.get"];
|
|
1002
|
+
/** Get custom domain configuration */
|
|
1003
|
+
get: operations["org.customDomain.get"];
|
|
1038
1004
|
put?: never;
|
|
1039
|
-
|
|
1005
|
+
/** Update custom domain configuration */
|
|
1006
|
+
post: operations["org.customDomain.update"];
|
|
1040
1007
|
delete?: never;
|
|
1041
1008
|
options?: never;
|
|
1042
1009
|
head?: never;
|
|
1043
1010
|
patch?: never;
|
|
1044
1011
|
trace?: never;
|
|
1045
1012
|
};
|
|
1046
|
-
"/
|
|
1013
|
+
"/orgs": {
|
|
1047
1014
|
parameters: {
|
|
1048
1015
|
query?: never;
|
|
1049
1016
|
header?: never;
|
|
1050
1017
|
path?: never;
|
|
1051
1018
|
cookie?: never;
|
|
1052
1019
|
};
|
|
1053
|
-
|
|
1020
|
+
/** List all organizations */
|
|
1021
|
+
get: operations["orgs.list"];
|
|
1054
1022
|
put?: never;
|
|
1055
1023
|
/**
|
|
1056
|
-
*
|
|
1057
|
-
* @description
|
|
1024
|
+
* Create a new organization
|
|
1025
|
+
* @description Create a new workspace to collaborate with others on exams.
|
|
1058
1026
|
*/
|
|
1059
|
-
post: operations["
|
|
1027
|
+
post: operations["orgs.create"];
|
|
1060
1028
|
delete?: never;
|
|
1061
1029
|
options?: never;
|
|
1062
1030
|
head?: never;
|
|
1063
1031
|
patch?: never;
|
|
1064
1032
|
trace?: never;
|
|
1065
1033
|
};
|
|
1066
|
-
"/
|
|
1034
|
+
"/audit-logs": {
|
|
1067
1035
|
parameters: {
|
|
1068
1036
|
query?: never;
|
|
1069
1037
|
header?: never;
|
|
1070
1038
|
path?: never;
|
|
1071
1039
|
cookie?: never;
|
|
1072
1040
|
};
|
|
1073
|
-
get?: never;
|
|
1074
|
-
put?: never;
|
|
1075
1041
|
/**
|
|
1076
|
-
*
|
|
1077
|
-
* @description
|
|
1042
|
+
* List audit logs
|
|
1043
|
+
* @description List the workspace's audit logs, newest first, with optional date range, actor and object filters. Paginated.
|
|
1078
1044
|
*/
|
|
1079
|
-
|
|
1045
|
+
get: operations["audit-logs.list"];
|
|
1046
|
+
put?: never;
|
|
1047
|
+
post?: never;
|
|
1080
1048
|
delete?: never;
|
|
1081
1049
|
options?: never;
|
|
1082
1050
|
head?: never;
|
|
1083
1051
|
patch?: never;
|
|
1084
1052
|
trace?: never;
|
|
1085
1053
|
};
|
|
1086
|
-
"/
|
|
1054
|
+
"/audit-logs/export": {
|
|
1087
1055
|
parameters: {
|
|
1088
1056
|
query?: never;
|
|
1089
1057
|
header?: never;
|
|
1090
1058
|
path?: never;
|
|
1091
1059
|
cookie?: never;
|
|
1092
1060
|
};
|
|
1093
|
-
get?: never;
|
|
1094
|
-
put?: never;
|
|
1095
1061
|
/**
|
|
1096
|
-
* Export
|
|
1097
|
-
* @description Export
|
|
1062
|
+
* Export audit logs
|
|
1063
|
+
* @description Export audit logs for a date range (optionally filtered by actor/object) as ND-JSON. Returns a temporary download URL.
|
|
1098
1064
|
*/
|
|
1099
|
-
|
|
1065
|
+
get: operations["audit-logs.export"];
|
|
1066
|
+
put?: never;
|
|
1067
|
+
post?: never;
|
|
1100
1068
|
delete?: never;
|
|
1101
1069
|
options?: never;
|
|
1102
1070
|
head?: never;
|
|
1103
1071
|
patch?: never;
|
|
1104
1072
|
trace?: never;
|
|
1105
1073
|
};
|
|
1106
|
-
"/
|
|
1074
|
+
"/api-keys": {
|
|
1107
1075
|
parameters: {
|
|
1108
1076
|
query?: never;
|
|
1109
1077
|
header?: never;
|
|
@@ -1111,23 +1079,19 @@ interface paths {
|
|
|
1111
1079
|
cookie?: never;
|
|
1112
1080
|
};
|
|
1113
1081
|
/**
|
|
1114
|
-
*
|
|
1115
|
-
* @description Get
|
|
1082
|
+
* Get API key
|
|
1083
|
+
* @description Get the API key for the current org/user combination. Creates one if none exists.
|
|
1116
1084
|
*/
|
|
1117
|
-
get: operations["
|
|
1085
|
+
get: operations["apiKeys.get"];
|
|
1118
1086
|
put?: never;
|
|
1119
|
-
|
|
1120
|
-
* Create exam
|
|
1121
|
-
* @description Create a new exam within your workspace.
|
|
1122
|
-
*/
|
|
1123
|
-
post: operations["exams.create"];
|
|
1087
|
+
post?: never;
|
|
1124
1088
|
delete?: never;
|
|
1125
1089
|
options?: never;
|
|
1126
1090
|
head?: never;
|
|
1127
1091
|
patch?: never;
|
|
1128
1092
|
trace?: never;
|
|
1129
1093
|
};
|
|
1130
|
-
"/
|
|
1094
|
+
"/api-keys/reset": {
|
|
1131
1095
|
parameters: {
|
|
1132
1096
|
query?: never;
|
|
1133
1097
|
header?: never;
|
|
@@ -1137,17 +1101,17 @@ interface paths {
|
|
|
1137
1101
|
get?: never;
|
|
1138
1102
|
put?: never;
|
|
1139
1103
|
/**
|
|
1140
|
-
*
|
|
1141
|
-
* @description
|
|
1104
|
+
* Reset API key
|
|
1105
|
+
* @description Invalidate old API keys for this org/user and create a new one.
|
|
1142
1106
|
*/
|
|
1143
|
-
post: operations["
|
|
1107
|
+
post: operations["apiKeys.reset"];
|
|
1144
1108
|
delete?: never;
|
|
1145
1109
|
options?: never;
|
|
1146
1110
|
head?: never;
|
|
1147
1111
|
patch?: never;
|
|
1148
1112
|
trace?: never;
|
|
1149
1113
|
};
|
|
1150
|
-
"/
|
|
1114
|
+
"/attributes": {
|
|
1151
1115
|
parameters: {
|
|
1152
1116
|
query?: never;
|
|
1153
1117
|
header?: never;
|
|
@@ -1155,27 +1119,23 @@ interface paths {
|
|
|
1155
1119
|
cookie?: never;
|
|
1156
1120
|
};
|
|
1157
1121
|
/**
|
|
1158
|
-
*
|
|
1159
|
-
* @description Get
|
|
1122
|
+
* List attributes
|
|
1123
|
+
* @description Get all custom attributes configured for the current workspace.
|
|
1160
1124
|
*/
|
|
1161
|
-
get: operations["
|
|
1125
|
+
get: operations["attributes.list"];
|
|
1162
1126
|
put?: never;
|
|
1163
1127
|
/**
|
|
1164
|
-
*
|
|
1165
|
-
* @description
|
|
1166
|
-
*/
|
|
1167
|
-
post: operations["exams.update"];
|
|
1168
|
-
/**
|
|
1169
|
-
* Delete exam
|
|
1170
|
-
* @description Delete the exam.
|
|
1128
|
+
* Create attribute
|
|
1129
|
+
* @description Create a new custom attribute in the current workspace.
|
|
1171
1130
|
*/
|
|
1172
|
-
|
|
1131
|
+
post: operations["attributes.create"];
|
|
1132
|
+
delete?: never;
|
|
1173
1133
|
options?: never;
|
|
1174
1134
|
head?: never;
|
|
1175
1135
|
patch?: never;
|
|
1176
1136
|
trace?: never;
|
|
1177
1137
|
};
|
|
1178
|
-
"/
|
|
1138
|
+
"/attributes/reorder": {
|
|
1179
1139
|
parameters: {
|
|
1180
1140
|
query?: never;
|
|
1181
1141
|
header?: never;
|
|
@@ -1185,17 +1145,17 @@ interface paths {
|
|
|
1185
1145
|
get?: never;
|
|
1186
1146
|
put?: never;
|
|
1187
1147
|
/**
|
|
1188
|
-
*
|
|
1189
|
-
* @description
|
|
1148
|
+
* Reorder attributes
|
|
1149
|
+
* @description Update the position of multiple attributes at once.
|
|
1190
1150
|
*/
|
|
1191
|
-
post: operations["
|
|
1151
|
+
post: operations["attributes.reorder"];
|
|
1192
1152
|
delete?: never;
|
|
1193
1153
|
options?: never;
|
|
1194
1154
|
head?: never;
|
|
1195
1155
|
patch?: never;
|
|
1196
1156
|
trace?: never;
|
|
1197
1157
|
};
|
|
1198
|
-
"/
|
|
1158
|
+
"/attributes/{id}": {
|
|
1199
1159
|
parameters: {
|
|
1200
1160
|
query?: never;
|
|
1201
1161
|
header?: never;
|
|
@@ -1205,37 +1165,45 @@ interface paths {
|
|
|
1205
1165
|
get?: never;
|
|
1206
1166
|
put?: never;
|
|
1207
1167
|
/**
|
|
1208
|
-
*
|
|
1209
|
-
* @description
|
|
1168
|
+
* Update attribute
|
|
1169
|
+
* @description Update an existing attribute in the current workspace.
|
|
1210
1170
|
*/
|
|
1211
|
-
post: operations["
|
|
1212
|
-
|
|
1171
|
+
post: operations["attributes.update"];
|
|
1172
|
+
/**
|
|
1173
|
+
* Delete attribute
|
|
1174
|
+
* @description Delete a custom attribute from the current workspace. Default attributes cannot be deleted.
|
|
1175
|
+
*/
|
|
1176
|
+
delete: operations["attributes.delete"];
|
|
1213
1177
|
options?: never;
|
|
1214
1178
|
head?: never;
|
|
1215
1179
|
patch?: never;
|
|
1216
1180
|
trace?: never;
|
|
1217
1181
|
};
|
|
1218
|
-
"/
|
|
1182
|
+
"/taxonomies": {
|
|
1219
1183
|
parameters: {
|
|
1220
1184
|
query?: never;
|
|
1221
1185
|
header?: never;
|
|
1222
1186
|
path?: never;
|
|
1223
1187
|
cookie?: never;
|
|
1224
1188
|
};
|
|
1225
|
-
|
|
1189
|
+
/**
|
|
1190
|
+
* Get taxonomies
|
|
1191
|
+
* @description Get a list available taxonomies, including defaults and taxonomies created in the current workspace.
|
|
1192
|
+
*/
|
|
1193
|
+
get: operations["taxonomies.list"];
|
|
1226
1194
|
put?: never;
|
|
1227
1195
|
/**
|
|
1228
|
-
*
|
|
1229
|
-
* @description
|
|
1196
|
+
* Create taxonomy
|
|
1197
|
+
* @description Save a new taxonomy in the current workspace.
|
|
1230
1198
|
*/
|
|
1231
|
-
post: operations["
|
|
1199
|
+
post: operations["taxonomies.create"];
|
|
1232
1200
|
delete?: never;
|
|
1233
1201
|
options?: never;
|
|
1234
1202
|
head?: never;
|
|
1235
1203
|
patch?: never;
|
|
1236
1204
|
trace?: never;
|
|
1237
1205
|
};
|
|
1238
|
-
"/
|
|
1206
|
+
"/taxonomies/{id}": {
|
|
1239
1207
|
parameters: {
|
|
1240
1208
|
query?: never;
|
|
1241
1209
|
header?: never;
|
|
@@ -1245,17 +1213,41 @@ interface paths {
|
|
|
1245
1213
|
get?: never;
|
|
1246
1214
|
put?: never;
|
|
1247
1215
|
/**
|
|
1248
|
-
*
|
|
1249
|
-
* @description
|
|
1216
|
+
* Update taxonomy
|
|
1217
|
+
* @description Update an existing taxonomy in the current workspace.
|
|
1250
1218
|
*/
|
|
1251
|
-
post: operations["
|
|
1219
|
+
post: operations["taxonomies.update"];
|
|
1220
|
+
/**
|
|
1221
|
+
* Delete taxonomy
|
|
1222
|
+
* @description Delete a taxonomy from the current workspace. This fails if there are any exams associated with the taxonomy.
|
|
1223
|
+
*/
|
|
1224
|
+
delete: operations["taxonomies.delete"];
|
|
1225
|
+
options?: never;
|
|
1226
|
+
head?: never;
|
|
1227
|
+
patch?: never;
|
|
1228
|
+
trace?: never;
|
|
1229
|
+
};
|
|
1230
|
+
"/permissions/autocomplete": {
|
|
1231
|
+
parameters: {
|
|
1232
|
+
query?: never;
|
|
1233
|
+
header?: never;
|
|
1234
|
+
path?: never;
|
|
1235
|
+
cookie?: never;
|
|
1236
|
+
};
|
|
1237
|
+
/**
|
|
1238
|
+
* Autocomplete users and groups
|
|
1239
|
+
* @description Search for users and groups to share with. Returns matches by name or email. Respects restricted group visibility.
|
|
1240
|
+
*/
|
|
1241
|
+
get: operations["permissions.autocomplete"];
|
|
1242
|
+
put?: never;
|
|
1243
|
+
post?: never;
|
|
1252
1244
|
delete?: never;
|
|
1253
1245
|
options?: never;
|
|
1254
1246
|
head?: never;
|
|
1255
1247
|
patch?: never;
|
|
1256
1248
|
trace?: never;
|
|
1257
1249
|
};
|
|
1258
|
-
"/
|
|
1250
|
+
"/permissions/{resource}": {
|
|
1259
1251
|
parameters: {
|
|
1260
1252
|
query?: never;
|
|
1261
1253
|
header?: never;
|
|
@@ -1263,10 +1255,58 @@ interface paths {
|
|
|
1263
1255
|
cookie?: never;
|
|
1264
1256
|
};
|
|
1265
1257
|
/**
|
|
1266
|
-
* Get
|
|
1267
|
-
* @description Get
|
|
1258
|
+
* Get sharing permissions
|
|
1259
|
+
* @description Get a list of users, groups and orgs that have access to a specific resource.
|
|
1268
1260
|
*/
|
|
1269
|
-
get: operations["
|
|
1261
|
+
get: operations["permissions.list"];
|
|
1262
|
+
put?: never;
|
|
1263
|
+
/**
|
|
1264
|
+
* Create permission
|
|
1265
|
+
* @description Create a new permission for a specific resource, or update the role of an existing actor.
|
|
1266
|
+
*/
|
|
1267
|
+
post: operations["permissions.assign"];
|
|
1268
|
+
delete?: never;
|
|
1269
|
+
options?: never;
|
|
1270
|
+
head?: never;
|
|
1271
|
+
patch?: never;
|
|
1272
|
+
trace?: never;
|
|
1273
|
+
};
|
|
1274
|
+
"/permissions/{resource}/{actor}": {
|
|
1275
|
+
parameters: {
|
|
1276
|
+
query?: never;
|
|
1277
|
+
header?: never;
|
|
1278
|
+
path?: never;
|
|
1279
|
+
cookie?: never;
|
|
1280
|
+
};
|
|
1281
|
+
/**
|
|
1282
|
+
* Get actor role
|
|
1283
|
+
* @description Get the role of a specific actor for a specific resource.
|
|
1284
|
+
*/
|
|
1285
|
+
get: operations["permissions.getActorRole"];
|
|
1286
|
+
put?: never;
|
|
1287
|
+
post?: never;
|
|
1288
|
+
/**
|
|
1289
|
+
* Remove permission
|
|
1290
|
+
* @description Remove a permission for a specific actor on a specific resource.
|
|
1291
|
+
*/
|
|
1292
|
+
delete: operations["permissions.delete"];
|
|
1293
|
+
options?: never;
|
|
1294
|
+
head?: never;
|
|
1295
|
+
patch?: never;
|
|
1296
|
+
trace?: never;
|
|
1297
|
+
};
|
|
1298
|
+
"/student-levels": {
|
|
1299
|
+
parameters: {
|
|
1300
|
+
query?: never;
|
|
1301
|
+
header?: never;
|
|
1302
|
+
path?: never;
|
|
1303
|
+
cookie?: never;
|
|
1304
|
+
};
|
|
1305
|
+
/**
|
|
1306
|
+
* List available student levels
|
|
1307
|
+
* @description Get a list of available default student levels.
|
|
1308
|
+
*/
|
|
1309
|
+
get: operations["studentLevels.list"];
|
|
1270
1310
|
put?: never;
|
|
1271
1311
|
post?: never;
|
|
1272
1312
|
delete?: never;
|
|
@@ -1275,6 +1315,54 @@ interface paths {
|
|
|
1275
1315
|
patch?: never;
|
|
1276
1316
|
trace?: never;
|
|
1277
1317
|
};
|
|
1318
|
+
"/users": {
|
|
1319
|
+
parameters: {
|
|
1320
|
+
query?: never;
|
|
1321
|
+
header?: never;
|
|
1322
|
+
path?: never;
|
|
1323
|
+
cookie?: never;
|
|
1324
|
+
};
|
|
1325
|
+
/**
|
|
1326
|
+
* List users
|
|
1327
|
+
* @description Get a list of all users in the workspace.
|
|
1328
|
+
*/
|
|
1329
|
+
get: operations["users.list"];
|
|
1330
|
+
put?: never;
|
|
1331
|
+
/**
|
|
1332
|
+
* Create user
|
|
1333
|
+
* @description Create a new user in the workspace.
|
|
1334
|
+
*/
|
|
1335
|
+
post: operations["users.create"];
|
|
1336
|
+
delete?: never;
|
|
1337
|
+
options?: never;
|
|
1338
|
+
head?: never;
|
|
1339
|
+
patch?: never;
|
|
1340
|
+
trace?: never;
|
|
1341
|
+
};
|
|
1342
|
+
"/users/{id}": {
|
|
1343
|
+
parameters: {
|
|
1344
|
+
query?: never;
|
|
1345
|
+
header?: never;
|
|
1346
|
+
path?: never;
|
|
1347
|
+
cookie?: never;
|
|
1348
|
+
};
|
|
1349
|
+
get?: never;
|
|
1350
|
+
put?: never;
|
|
1351
|
+
post?: never;
|
|
1352
|
+
/**
|
|
1353
|
+
* Delete user
|
|
1354
|
+
* @description Delete a user from the workspace.
|
|
1355
|
+
*/
|
|
1356
|
+
delete: operations["users.delete"];
|
|
1357
|
+
options?: never;
|
|
1358
|
+
head?: never;
|
|
1359
|
+
/**
|
|
1360
|
+
* Update user role
|
|
1361
|
+
* @description Update a user's role within the workspace.
|
|
1362
|
+
*/
|
|
1363
|
+
patch: operations["users.update"];
|
|
1364
|
+
trace?: never;
|
|
1365
|
+
};
|
|
1278
1366
|
"/practice-spaces": {
|
|
1279
1367
|
parameters: {
|
|
1280
1368
|
query?: never;
|
|
@@ -1899,6 +1987,54 @@ interface paths {
|
|
|
1899
1987
|
patch: operations["patchRubrics:id"];
|
|
1900
1988
|
trace?: never;
|
|
1901
1989
|
};
|
|
1990
|
+
"/prompts": {
|
|
1991
|
+
parameters: {
|
|
1992
|
+
query?: never;
|
|
1993
|
+
header?: never;
|
|
1994
|
+
path?: never;
|
|
1995
|
+
cookie?: never;
|
|
1996
|
+
};
|
|
1997
|
+
/**
|
|
1998
|
+
* Get prompts
|
|
1999
|
+
* @description Get a list of reusable prompts, merging the workspace's saved prompts with the defaults provided by Examplary. Optionally filter by type and language.
|
|
2000
|
+
*/
|
|
2001
|
+
get: operations["prompts.list"];
|
|
2002
|
+
put?: never;
|
|
2003
|
+
/**
|
|
2004
|
+
* Save prompt
|
|
2005
|
+
* @description Save a reusable prompt in the current workspace.
|
|
2006
|
+
*/
|
|
2007
|
+
post: operations["prompts.create"];
|
|
2008
|
+
delete?: never;
|
|
2009
|
+
options?: never;
|
|
2010
|
+
head?: never;
|
|
2011
|
+
patch?: never;
|
|
2012
|
+
trace?: never;
|
|
2013
|
+
};
|
|
2014
|
+
"/prompts/{id}": {
|
|
2015
|
+
parameters: {
|
|
2016
|
+
query?: never;
|
|
2017
|
+
header?: never;
|
|
2018
|
+
path?: never;
|
|
2019
|
+
cookie?: never;
|
|
2020
|
+
};
|
|
2021
|
+
get?: never;
|
|
2022
|
+
put?: never;
|
|
2023
|
+
post?: never;
|
|
2024
|
+
/**
|
|
2025
|
+
* Delete prompt
|
|
2026
|
+
* @description Delete a prompt from the current workspace.
|
|
2027
|
+
*/
|
|
2028
|
+
delete: operations["prompts.delete"];
|
|
2029
|
+
options?: never;
|
|
2030
|
+
head?: never;
|
|
2031
|
+
/**
|
|
2032
|
+
* Update prompt
|
|
2033
|
+
* @description Update an existing prompt in the current workspace.
|
|
2034
|
+
*/
|
|
2035
|
+
patch: operations["prompts.update"];
|
|
2036
|
+
trace?: never;
|
|
2037
|
+
};
|
|
1902
2038
|
"/jobs/{id}": {
|
|
1903
2039
|
parameters: {
|
|
1904
2040
|
query?: never;
|
|
@@ -2149,7 +2285,30 @@ interface operations {
|
|
|
2149
2285
|
*/
|
|
2150
2286
|
type: "AssociateInteraction" | "ChoiceInteraction" | "DrawingInteraction" | "EndAttemptInteraction" | "ExtendedTextInteraction" | "GapMatchInteraction" | "GraphicAssociateInteraction" | "GraphicGapMatchInteraction" | "GraphicOrderInteraction" | "HotspotInteraction" | "HottextInteraction" | "InlineChoiceInteraction" | "MatchInteraction" | "MediaInteraction" | "OrderInteraction" | "PortableCustomInteraction" | "PositionObjectInteraction" | "SelectPointInteraction" | "SliderInteraction" | "TextEntryInteraction" | "UploadInteraction";
|
|
2151
2287
|
options?: {
|
|
2152
|
-
[key: string]: string | number | boolean | unknown[] |
|
|
2288
|
+
[key: string]: string | number | boolean | unknown[] | {
|
|
2289
|
+
[key: string]: unknown;
|
|
2290
|
+
};
|
|
2291
|
+
};
|
|
2292
|
+
};
|
|
2293
|
+
};
|
|
2294
|
+
};
|
|
2295
|
+
/** @description Import configuration for various formats */
|
|
2296
|
+
import?: {
|
|
2297
|
+
/** @description QTI 3.0 import configuration for mapping incoming QTI items to this question type */
|
|
2298
|
+
qti3?: {
|
|
2299
|
+
interaction: {
|
|
2300
|
+
/**
|
|
2301
|
+
* @description The QTI interaction type this question type handles on import
|
|
2302
|
+
* @enum {string}
|
|
2303
|
+
*/
|
|
2304
|
+
type: "AssociateInteraction" | "ChoiceInteraction" | "DrawingInteraction" | "EndAttemptInteraction" | "ExtendedTextInteraction" | "GapMatchInteraction" | "GraphicAssociateInteraction" | "GraphicGapMatchInteraction" | "GraphicOrderInteraction" | "HotspotInteraction" | "HottextInteraction" | "InlineChoiceInteraction" | "MatchInteraction" | "MediaInteraction" | "OrderInteraction" | "PortableCustomInteraction" | "PositionObjectInteraction" | "SelectPointInteraction" | "SliderInteraction" | "TextEntryInteraction" | "UploadInteraction";
|
|
2305
|
+
};
|
|
2306
|
+
/** @description Optional JSONata expression (starting with =) that must evaluate to true for this mapping to be used. Evaluated against the same context as settings: { interaction, correctResponse, points }. Useful when multiple question types handle the same interaction type (e.g. single vs multiple choice). */
|
|
2307
|
+
condition?: string;
|
|
2308
|
+
/** @description JSONata expressions mapping QTI interaction properties to question settings */
|
|
2309
|
+
settings?: {
|
|
2310
|
+
[key: string]: string | number | boolean | unknown[] | {
|
|
2311
|
+
[key: string]: unknown;
|
|
2153
2312
|
};
|
|
2154
2313
|
};
|
|
2155
2314
|
};
|
|
@@ -2639,6 +2798,38 @@ interface operations {
|
|
|
2639
2798
|
presets: {
|
|
2640
2799
|
examId: string;
|
|
2641
2800
|
};
|
|
2801
|
+
} | {
|
|
2802
|
+
/** @description The user ID for whom the embed session is created */
|
|
2803
|
+
actor: string;
|
|
2804
|
+
/** @description UI options for the embed session */
|
|
2805
|
+
theme: {
|
|
2806
|
+
/** @description CSS hex color code for primary UI elements, either #RRGGBB or #RGB */
|
|
2807
|
+
primaryColor?: string;
|
|
2808
|
+
/** @description CSS hex color code for background, either #RRGGBB or #RGB */
|
|
2809
|
+
backgroundColor?: string;
|
|
2810
|
+
/** @description Locale code for UI language. Currently supported: 'en', 'nl' - other values accepted, but will default to English */
|
|
2811
|
+
locale?: string;
|
|
2812
|
+
};
|
|
2813
|
+
/** @description Additional key-value metadata */
|
|
2814
|
+
metadata?: {
|
|
2815
|
+
[key: string]: string | number | boolean | null;
|
|
2816
|
+
};
|
|
2817
|
+
/**
|
|
2818
|
+
* Format: uri
|
|
2819
|
+
* @description Optional redirect URL after completion
|
|
2820
|
+
*/
|
|
2821
|
+
returnUrl?: string;
|
|
2822
|
+
/**
|
|
2823
|
+
* Format: uri
|
|
2824
|
+
* @description Optional allowed origin for postMessage events
|
|
2825
|
+
*/
|
|
2826
|
+
allowedOrigin?: string;
|
|
2827
|
+
/** @enum {string} */
|
|
2828
|
+
flow: "take-exam";
|
|
2829
|
+
/** @description Preset values for the take-exam flow */
|
|
2830
|
+
presets: {
|
|
2831
|
+
examId: string;
|
|
2832
|
+
};
|
|
2642
2833
|
} | {
|
|
2643
2834
|
/** @description The user ID for whom the embed session is created */
|
|
2644
2835
|
actor: string;
|
|
@@ -2687,7 +2878,7 @@ interface operations {
|
|
|
2687
2878
|
/** Format: uri */
|
|
2688
2879
|
embedUrl: string;
|
|
2689
2880
|
/** @enum {string} */
|
|
2690
|
-
flow: "generate-exam" | "generate-question" | "edit-exam" | "edit-rubric" | "mark-answer" | "practice-space-student";
|
|
2881
|
+
flow: "generate-exam" | "generate-question" | "edit-exam" | "take-exam" | "edit-rubric" | "mark-answer" | "practice-space-student";
|
|
2691
2882
|
actor: string;
|
|
2692
2883
|
enabledResponseModes: ("return_url" | "post_message")[];
|
|
2693
2884
|
/** Format: date-time */
|
|
@@ -2738,7 +2929,7 @@ interface operations {
|
|
|
2738
2929
|
/** Format: uri */
|
|
2739
2930
|
embedUrl: string;
|
|
2740
2931
|
/** @enum {string} */
|
|
2741
|
-
flow: "generate-exam" | "generate-question" | "edit-exam" | "edit-rubric" | "mark-answer" | "practice-space-student";
|
|
2932
|
+
flow: "generate-exam" | "generate-question" | "edit-exam" | "take-exam" | "edit-rubric" | "mark-answer" | "practice-space-student";
|
|
2742
2933
|
actor: string;
|
|
2743
2934
|
enabledResponseModes: ("return_url" | "post_message")[];
|
|
2744
2935
|
/** Format: date-time */
|
|
@@ -2778,309 +2969,341 @@ interface operations {
|
|
|
2778
2969
|
requestBody?: never;
|
|
2779
2970
|
responses: never;
|
|
2780
2971
|
};
|
|
2781
|
-
"
|
|
2972
|
+
"exams.sessions.list": {
|
|
2782
2973
|
parameters: {
|
|
2783
2974
|
query?: never;
|
|
2784
2975
|
header?: never;
|
|
2785
|
-
path
|
|
2976
|
+
path: {
|
|
2977
|
+
id: string;
|
|
2978
|
+
};
|
|
2786
2979
|
cookie?: never;
|
|
2787
2980
|
};
|
|
2788
2981
|
requestBody?: never;
|
|
2789
2982
|
responses: never;
|
|
2790
2983
|
};
|
|
2791
|
-
"
|
|
2984
|
+
"exams.sessions.import": {
|
|
2792
2985
|
parameters: {
|
|
2793
2986
|
query?: never;
|
|
2794
2987
|
header?: never;
|
|
2795
|
-
path
|
|
2988
|
+
path: {
|
|
2989
|
+
id: string;
|
|
2990
|
+
};
|
|
2796
2991
|
cookie?: never;
|
|
2797
2992
|
};
|
|
2798
2993
|
requestBody?: {
|
|
2799
2994
|
content: {
|
|
2800
2995
|
"application/json": {
|
|
2801
|
-
|
|
2802
|
-
|
|
2803
|
-
|
|
2804
|
-
|
|
2805
|
-
|
|
2806
|
-
|
|
2996
|
+
studentName: string;
|
|
2997
|
+
/**
|
|
2998
|
+
* @default manual
|
|
2999
|
+
* @enum {string}
|
|
3000
|
+
*/
|
|
3001
|
+
source?: "online-assessment" | "document-scanner" | "answer-bot" | "manual";
|
|
3002
|
+
answers?: {
|
|
3003
|
+
question: string;
|
|
3004
|
+
value?: (string | (string | null)[]) | null;
|
|
3005
|
+
completed?: boolean | null;
|
|
3006
|
+
context?: unknown | null;
|
|
3007
|
+
pointsAwarded?: number | null;
|
|
3008
|
+
pointsToEarn?: number | null;
|
|
3009
|
+
feedback?: string | null;
|
|
3010
|
+
scoringCriteria?: unknown | null;
|
|
3011
|
+
/** Format: date-time */
|
|
3012
|
+
savedAt?: string;
|
|
3013
|
+
gradedAt?: string | null;
|
|
3014
|
+
gradedBy?: string | null;
|
|
3015
|
+
gradingStatus?: ("graded" | "auto-graded") | null;
|
|
3016
|
+
originalValue?: (string | (string | null)[]) | null;
|
|
3017
|
+
editedBy?: string | null;
|
|
3018
|
+
editedAt?: string | null;
|
|
3019
|
+
masteryTopicId?: string | null;
|
|
3020
|
+
traceIds?: string[] | null;
|
|
3021
|
+
}[];
|
|
2807
3022
|
};
|
|
2808
3023
|
};
|
|
2809
3024
|
};
|
|
2810
3025
|
responses: never;
|
|
2811
3026
|
};
|
|
2812
|
-
"
|
|
2813
|
-
parameters: {
|
|
2814
|
-
query?: {
|
|
2815
|
-
/** @description Original attachment filename */
|
|
2816
|
-
filename?: string;
|
|
2817
|
-
/** @description Category of file, used for grouping */
|
|
2818
|
-
type?: string;
|
|
2819
|
-
/** @description MIME type of the attachment */
|
|
2820
|
-
contentType?: string;
|
|
2821
|
-
};
|
|
2822
|
-
header?: never;
|
|
2823
|
-
path?: never;
|
|
2824
|
-
cookie?: never;
|
|
2825
|
-
};
|
|
2826
|
-
requestBody?: never;
|
|
2827
|
-
responses: {
|
|
2828
|
-
200: {
|
|
2829
|
-
headers: {
|
|
2830
|
-
[name: string]: unknown;
|
|
2831
|
-
};
|
|
2832
|
-
content: {
|
|
2833
|
-
"application/json": {
|
|
2834
|
-
/** Format: uri */
|
|
2835
|
-
uploadUrl?: string;
|
|
2836
|
-
/** Format: uri */
|
|
2837
|
-
publicUrl?: string;
|
|
2838
|
-
};
|
|
2839
|
-
};
|
|
2840
|
-
};
|
|
2841
|
-
};
|
|
2842
|
-
};
|
|
2843
|
-
"org.get": {
|
|
2844
|
-
parameters: {
|
|
2845
|
-
query?: never;
|
|
2846
|
-
header?: never;
|
|
2847
|
-
path?: never;
|
|
2848
|
-
cookie?: never;
|
|
2849
|
-
};
|
|
2850
|
-
requestBody?: never;
|
|
2851
|
-
responses: never;
|
|
2852
|
-
};
|
|
2853
|
-
"org.delete": {
|
|
3027
|
+
"exams.sessions.scan": {
|
|
2854
3028
|
parameters: {
|
|
2855
3029
|
query?: never;
|
|
2856
3030
|
header?: never;
|
|
2857
|
-
path
|
|
3031
|
+
path: {
|
|
3032
|
+
id: string;
|
|
3033
|
+
};
|
|
2858
3034
|
cookie?: never;
|
|
2859
3035
|
};
|
|
2860
3036
|
requestBody?: never;
|
|
2861
3037
|
responses: never;
|
|
2862
3038
|
};
|
|
2863
|
-
"
|
|
3039
|
+
"exams.sessions.scanDocument": {
|
|
2864
3040
|
parameters: {
|
|
2865
3041
|
query?: never;
|
|
2866
3042
|
header?: never;
|
|
2867
|
-
path
|
|
3043
|
+
path: {
|
|
3044
|
+
id: string;
|
|
3045
|
+
};
|
|
2868
3046
|
cookie?: never;
|
|
2869
3047
|
};
|
|
2870
3048
|
requestBody?: {
|
|
2871
3049
|
content: {
|
|
2872
3050
|
"application/json": {
|
|
2873
|
-
name?: string;
|
|
2874
3051
|
/** Format: uri */
|
|
2875
|
-
|
|
2876
|
-
menuColor?: string;
|
|
2877
|
-
accentColor?: string;
|
|
2878
|
-
sharingBlockPublic?: boolean;
|
|
2879
|
-
settings?: {
|
|
2880
|
-
/** @description Whether users can only see other users in the same groups as them. */
|
|
2881
|
-
restrictGroupVisibility?: boolean;
|
|
2882
|
-
/** @description Whether the organization blocks public link sharing. */
|
|
2883
|
-
sharingBlockPublic?: boolean;
|
|
2884
|
-
};
|
|
3052
|
+
documentUrl: string;
|
|
2885
3053
|
};
|
|
2886
3054
|
};
|
|
2887
3055
|
};
|
|
2888
3056
|
responses: never;
|
|
2889
3057
|
};
|
|
2890
|
-
"
|
|
3058
|
+
"exams.sessions.get": {
|
|
2891
3059
|
parameters: {
|
|
2892
3060
|
query?: never;
|
|
2893
3061
|
header?: never;
|
|
2894
|
-
path
|
|
3062
|
+
path: {
|
|
3063
|
+
id: string;
|
|
3064
|
+
sessionId: string;
|
|
3065
|
+
};
|
|
2895
3066
|
cookie?: never;
|
|
2896
3067
|
};
|
|
2897
3068
|
requestBody?: never;
|
|
2898
3069
|
responses: never;
|
|
2899
3070
|
};
|
|
2900
|
-
"
|
|
3071
|
+
"exams.sessions.delete": {
|
|
2901
3072
|
parameters: {
|
|
2902
3073
|
query?: never;
|
|
2903
3074
|
header?: never;
|
|
2904
|
-
path
|
|
2905
|
-
|
|
2906
|
-
|
|
2907
|
-
requestBody?: {
|
|
2908
|
-
content: {
|
|
2909
|
-
"application/json": {
|
|
2910
|
-
customDomain?: string | null;
|
|
2911
|
-
};
|
|
3075
|
+
path: {
|
|
3076
|
+
id: string;
|
|
3077
|
+
sessionId: string;
|
|
2912
3078
|
};
|
|
3079
|
+
cookie?: never;
|
|
2913
3080
|
};
|
|
3081
|
+
requestBody?: never;
|
|
2914
3082
|
responses: never;
|
|
2915
3083
|
};
|
|
2916
|
-
"
|
|
3084
|
+
"exams.sessions.saveFeedback": {
|
|
2917
3085
|
parameters: {
|
|
2918
3086
|
query?: never;
|
|
2919
3087
|
header?: never;
|
|
2920
|
-
path
|
|
3088
|
+
path: {
|
|
3089
|
+
id: string;
|
|
3090
|
+
sessionId: string;
|
|
3091
|
+
};
|
|
2921
3092
|
cookie?: never;
|
|
2922
3093
|
};
|
|
2923
|
-
requestBody?:
|
|
3094
|
+
requestBody?: {
|
|
3095
|
+
content: {
|
|
3096
|
+
"application/json": {
|
|
3097
|
+
/** @description Question ID to provide feedback for */
|
|
3098
|
+
question: string;
|
|
3099
|
+
/** @description Points to award for the answer */
|
|
3100
|
+
pointsAwarded?: number;
|
|
3101
|
+
/** @description Optional teacher feedback for the answer */
|
|
3102
|
+
feedback?: string;
|
|
3103
|
+
};
|
|
3104
|
+
};
|
|
3105
|
+
};
|
|
2924
3106
|
responses: never;
|
|
2925
3107
|
};
|
|
2926
|
-
"
|
|
3108
|
+
"exams.sessions.saveOverallFeedback": {
|
|
2927
3109
|
parameters: {
|
|
2928
3110
|
query?: never;
|
|
2929
3111
|
header?: never;
|
|
2930
|
-
path
|
|
3112
|
+
path: {
|
|
3113
|
+
id: string;
|
|
3114
|
+
sessionId: string;
|
|
3115
|
+
};
|
|
2931
3116
|
cookie?: never;
|
|
2932
3117
|
};
|
|
2933
3118
|
requestBody?: {
|
|
2934
3119
|
content: {
|
|
2935
3120
|
"application/json": {
|
|
2936
|
-
|
|
3121
|
+
/** @description Teacher feedback for the test as a whole */
|
|
3122
|
+
feedback?: string | null;
|
|
2937
3123
|
};
|
|
2938
3124
|
};
|
|
2939
3125
|
};
|
|
2940
3126
|
responses: never;
|
|
2941
3127
|
};
|
|
2942
|
-
"
|
|
3128
|
+
"exams.sessions.generateOverallFeedback": {
|
|
2943
3129
|
parameters: {
|
|
2944
3130
|
query?: never;
|
|
2945
3131
|
header?: never;
|
|
2946
|
-
path
|
|
3132
|
+
path: {
|
|
3133
|
+
id: string;
|
|
3134
|
+
sessionId: string;
|
|
3135
|
+
};
|
|
2947
3136
|
cookie?: never;
|
|
2948
3137
|
};
|
|
2949
3138
|
requestBody?: never;
|
|
2950
3139
|
responses: never;
|
|
2951
3140
|
};
|
|
2952
|
-
"
|
|
3141
|
+
"exams.sessions.acceptAllSuggestions": {
|
|
2953
3142
|
parameters: {
|
|
2954
3143
|
query?: never;
|
|
2955
3144
|
header?: never;
|
|
2956
|
-
path
|
|
3145
|
+
path: {
|
|
3146
|
+
id: string;
|
|
3147
|
+
sessionId: string;
|
|
3148
|
+
};
|
|
2957
3149
|
cookie?: never;
|
|
2958
3150
|
};
|
|
2959
3151
|
requestBody?: never;
|
|
2960
3152
|
responses: never;
|
|
2961
3153
|
};
|
|
2962
|
-
"
|
|
3154
|
+
"exams.sessions.acceptSuggestion": {
|
|
2963
3155
|
parameters: {
|
|
2964
3156
|
query?: never;
|
|
2965
3157
|
header?: never;
|
|
2966
|
-
path
|
|
3158
|
+
path: {
|
|
3159
|
+
id: string;
|
|
3160
|
+
sessionId: string;
|
|
3161
|
+
questionId: string;
|
|
3162
|
+
};
|
|
2967
3163
|
cookie?: never;
|
|
2968
3164
|
};
|
|
2969
3165
|
requestBody?: never;
|
|
2970
3166
|
responses: never;
|
|
2971
3167
|
};
|
|
2972
|
-
"
|
|
3168
|
+
"exams.sessions.editAnswer": {
|
|
2973
3169
|
parameters: {
|
|
2974
3170
|
query?: never;
|
|
2975
3171
|
header?: never;
|
|
2976
|
-
path
|
|
3172
|
+
path: {
|
|
3173
|
+
id: string;
|
|
3174
|
+
sessionId: string;
|
|
3175
|
+
questionId: string;
|
|
3176
|
+
};
|
|
2977
3177
|
cookie?: never;
|
|
2978
3178
|
};
|
|
2979
3179
|
requestBody?: {
|
|
2980
3180
|
content: {
|
|
2981
3181
|
"application/json": {
|
|
2982
|
-
|
|
2983
|
-
|
|
2984
|
-
|
|
2985
|
-
|
|
2986
|
-
|
|
2987
|
-
|
|
2988
|
-
|
|
2989
|
-
|
|
3182
|
+
answer: {
|
|
3183
|
+
question: string;
|
|
3184
|
+
value?: (string | (string | null)[]) | null;
|
|
3185
|
+
completed?: boolean | null;
|
|
3186
|
+
context?: unknown | null;
|
|
3187
|
+
};
|
|
3188
|
+
/** @description Whether to automatically grade the answer after editing */
|
|
3189
|
+
autoGrade?: boolean;
|
|
2990
3190
|
};
|
|
2991
3191
|
};
|
|
2992
3192
|
};
|
|
2993
3193
|
responses: never;
|
|
2994
3194
|
};
|
|
2995
|
-
"
|
|
3195
|
+
"exams.sessions.comments.list": {
|
|
2996
3196
|
parameters: {
|
|
2997
3197
|
query?: never;
|
|
2998
3198
|
header?: never;
|
|
2999
|
-
path
|
|
3000
|
-
|
|
3001
|
-
|
|
3002
|
-
requestBody?: {
|
|
3003
|
-
content: {
|
|
3004
|
-
"application/json": {
|
|
3005
|
-
order: {
|
|
3006
|
-
id: string;
|
|
3007
|
-
position: number;
|
|
3008
|
-
}[];
|
|
3009
|
-
};
|
|
3199
|
+
path: {
|
|
3200
|
+
id: string;
|
|
3201
|
+
sessionId: string;
|
|
3010
3202
|
};
|
|
3203
|
+
cookie?: never;
|
|
3011
3204
|
};
|
|
3205
|
+
requestBody?: never;
|
|
3012
3206
|
responses: never;
|
|
3013
3207
|
};
|
|
3014
|
-
"
|
|
3208
|
+
"exams.sessions.comments.create": {
|
|
3015
3209
|
parameters: {
|
|
3016
3210
|
query?: never;
|
|
3017
3211
|
header?: never;
|
|
3018
3212
|
path: {
|
|
3019
3213
|
id: string;
|
|
3214
|
+
sessionId: string;
|
|
3020
3215
|
};
|
|
3021
3216
|
cookie?: never;
|
|
3022
3217
|
};
|
|
3023
3218
|
requestBody?: {
|
|
3024
3219
|
content: {
|
|
3025
3220
|
"application/json": {
|
|
3026
|
-
|
|
3221
|
+
value?: string;
|
|
3222
|
+
range?: [
|
|
3223
|
+
number,
|
|
3224
|
+
number
|
|
3225
|
+
];
|
|
3226
|
+
quotation?: string;
|
|
3227
|
+
inReplyTo?: string;
|
|
3027
3228
|
/** @enum {string} */
|
|
3028
|
-
|
|
3029
|
-
|
|
3030
|
-
|
|
3031
|
-
showAsStudentPreference?: boolean;
|
|
3032
|
-
position?: number;
|
|
3033
|
-
appearanceColor?: (string) | null;
|
|
3229
|
+
status?: "open" | "resolved";
|
|
3230
|
+
/** @description Question ID the comment is attached to */
|
|
3231
|
+
question: string;
|
|
3034
3232
|
};
|
|
3035
3233
|
};
|
|
3036
3234
|
};
|
|
3037
3235
|
responses: never;
|
|
3038
3236
|
};
|
|
3039
|
-
"
|
|
3237
|
+
"exams.sessions.comments.delete": {
|
|
3040
3238
|
parameters: {
|
|
3041
3239
|
query?: never;
|
|
3042
3240
|
header?: never;
|
|
3043
3241
|
path: {
|
|
3044
3242
|
id: string;
|
|
3243
|
+
sessionId: string;
|
|
3244
|
+
commentId: string;
|
|
3045
3245
|
};
|
|
3046
3246
|
cookie?: never;
|
|
3047
3247
|
};
|
|
3048
3248
|
requestBody?: never;
|
|
3049
3249
|
responses: never;
|
|
3050
3250
|
};
|
|
3051
|
-
"
|
|
3251
|
+
"exams.sessions.comments.update": {
|
|
3052
3252
|
parameters: {
|
|
3053
3253
|
query?: never;
|
|
3054
3254
|
header?: never;
|
|
3055
|
-
path
|
|
3255
|
+
path: {
|
|
3256
|
+
id: string;
|
|
3257
|
+
sessionId: string;
|
|
3258
|
+
commentId: string;
|
|
3259
|
+
};
|
|
3056
3260
|
cookie?: never;
|
|
3057
3261
|
};
|
|
3058
|
-
requestBody?:
|
|
3262
|
+
requestBody?: {
|
|
3263
|
+
content: {
|
|
3264
|
+
"application/json": {
|
|
3265
|
+
value?: string;
|
|
3266
|
+
range?: [
|
|
3267
|
+
number,
|
|
3268
|
+
number
|
|
3269
|
+
];
|
|
3270
|
+
quotation?: string;
|
|
3271
|
+
inReplyTo?: string;
|
|
3272
|
+
/** @enum {string} */
|
|
3273
|
+
status?: "open" | "resolved";
|
|
3274
|
+
};
|
|
3275
|
+
};
|
|
3276
|
+
};
|
|
3059
3277
|
responses: never;
|
|
3060
3278
|
};
|
|
3061
|
-
"
|
|
3279
|
+
"exams.questions.import": {
|
|
3062
3280
|
parameters: {
|
|
3063
3281
|
query?: never;
|
|
3064
3282
|
header?: never;
|
|
3065
|
-
path
|
|
3283
|
+
path: {
|
|
3284
|
+
id: string;
|
|
3285
|
+
};
|
|
3066
3286
|
cookie?: never;
|
|
3067
3287
|
};
|
|
3068
3288
|
requestBody?: {
|
|
3069
3289
|
content: {
|
|
3070
3290
|
"application/json": {
|
|
3071
|
-
name
|
|
3072
|
-
|
|
3073
|
-
|
|
3074
|
-
|
|
3075
|
-
|
|
3076
|
-
|
|
3077
|
-
|
|
3291
|
+
/** @description File name */
|
|
3292
|
+
name?: string;
|
|
3293
|
+
/** @description MIME type of the file, e.g. application/pdf */
|
|
3294
|
+
type?: string;
|
|
3295
|
+
/** @description URL of the file, required if no content is specified. */
|
|
3296
|
+
url?: string;
|
|
3297
|
+
/** @description Content of the file as a string, as an alternative to URL. Only supported for exports from other systems (e.g. Moodle XML). */
|
|
3298
|
+
content?: string;
|
|
3299
|
+
/** @description Whether to keep existing exam settings when importing questions via AI. */
|
|
3300
|
+
keepExistingSettings?: boolean;
|
|
3078
3301
|
};
|
|
3079
3302
|
};
|
|
3080
3303
|
};
|
|
3081
3304
|
responses: never;
|
|
3082
3305
|
};
|
|
3083
|
-
"
|
|
3306
|
+
"exams.questions.generate": {
|
|
3084
3307
|
parameters: {
|
|
3085
3308
|
query?: never;
|
|
3086
3309
|
header?: never;
|
|
@@ -3092,278 +3315,116 @@ interface operations {
|
|
|
3092
3315
|
requestBody?: {
|
|
3093
3316
|
content: {
|
|
3094
3317
|
"application/json": {
|
|
3095
|
-
|
|
3096
|
-
|
|
3097
|
-
|
|
3098
|
-
|
|
3099
|
-
name?: string;
|
|
3100
|
-
instructions?: string;
|
|
3101
|
-
}[];
|
|
3102
|
-
} & {
|
|
3103
|
-
[key: string]: unknown;
|
|
3318
|
+
message: string;
|
|
3319
|
+
questionType?: string;
|
|
3320
|
+
/** @enum {string} */
|
|
3321
|
+
format?: "examplary_json" | "qti_v3p0" | "qti_v2p1";
|
|
3104
3322
|
};
|
|
3105
3323
|
};
|
|
3106
3324
|
};
|
|
3107
3325
|
responses: never;
|
|
3108
3326
|
};
|
|
3109
|
-
"
|
|
3327
|
+
"exams.questions.get": {
|
|
3110
3328
|
parameters: {
|
|
3111
|
-
query?:
|
|
3329
|
+
query?: {
|
|
3330
|
+
/** @description The format to return the question in. `examplary_json` returns the question in the Examplary JSON format, while `qti_v3p0` and `qti_v2p1` return the question in QTI format version 3 and 2.1 respectively. */
|
|
3331
|
+
format?: "examplary_json" | "qti_v3p0" | "qti_v2p1";
|
|
3332
|
+
};
|
|
3112
3333
|
header?: never;
|
|
3113
3334
|
path: {
|
|
3335
|
+
/** @description Exam ID, e.g. `exam_1234`. */
|
|
3114
3336
|
id: string;
|
|
3337
|
+
/** @description Question ID, e.g. `question_1234`, or `first` to get the first question. */
|
|
3338
|
+
questionId: string;
|
|
3115
3339
|
};
|
|
3116
3340
|
cookie?: never;
|
|
3117
3341
|
};
|
|
3118
3342
|
requestBody?: never;
|
|
3119
3343
|
responses: never;
|
|
3120
3344
|
};
|
|
3121
|
-
"
|
|
3345
|
+
"exams.questions.regenerate": {
|
|
3122
3346
|
parameters: {
|
|
3123
|
-
query
|
|
3124
|
-
/** @description Search query (min 3 characters) */
|
|
3125
|
-
q: string;
|
|
3126
|
-
/** @description Type of entity to search */
|
|
3127
|
-
type?: "user" | "group";
|
|
3128
|
-
};
|
|
3129
|
-
header?: never;
|
|
3130
|
-
path?: never;
|
|
3131
|
-
cookie?: never;
|
|
3132
|
-
};
|
|
3133
|
-
requestBody?: never;
|
|
3134
|
-
responses: {
|
|
3135
|
-
/** @description List of matching users and groups. */
|
|
3136
|
-
200: {
|
|
3137
|
-
headers: {
|
|
3138
|
-
[name: string]: unknown;
|
|
3139
|
-
};
|
|
3140
|
-
content?: never;
|
|
3141
|
-
};
|
|
3142
|
-
/** @description Query must be at least 3 characters. */
|
|
3143
|
-
400: {
|
|
3144
|
-
headers: {
|
|
3145
|
-
[name: string]: unknown;
|
|
3146
|
-
};
|
|
3147
|
-
content?: never;
|
|
3148
|
-
};
|
|
3149
|
-
};
|
|
3150
|
-
};
|
|
3151
|
-
"permissions.list": {
|
|
3152
|
-
parameters: {
|
|
3153
|
-
query?: never;
|
|
3154
|
-
header?: never;
|
|
3155
|
-
path: {
|
|
3156
|
-
/** @description The ID of the resource to list permissions for, e.g. `exam_1234`. */
|
|
3157
|
-
resource: string;
|
|
3158
|
-
};
|
|
3159
|
-
cookie?: never;
|
|
3160
|
-
};
|
|
3161
|
-
requestBody?: never;
|
|
3162
|
-
responses: {
|
|
3163
|
-
/** @description List of permissions for the specified resource. */
|
|
3164
|
-
200: {
|
|
3165
|
-
headers: {
|
|
3166
|
-
[name: string]: unknown;
|
|
3167
|
-
};
|
|
3168
|
-
content: {
|
|
3169
|
-
"application/json": {
|
|
3170
|
-
actor: {
|
|
3171
|
-
id: string;
|
|
3172
|
-
name?: string;
|
|
3173
|
-
/** Format: uri */
|
|
3174
|
-
avatar?: string;
|
|
3175
|
-
/** @enum {string} */
|
|
3176
|
-
type: "user" | "group" | "org";
|
|
3177
|
-
/** @enum {string} */
|
|
3178
|
-
orgRole?: "owner" | "admin" | "teacher" | "student" | "member";
|
|
3179
|
-
};
|
|
3180
|
-
/** @enum {string} */
|
|
3181
|
-
role: "owner" | "manager" | "editor" | "viewer" | "participant";
|
|
3182
|
-
/** Format: date-time */
|
|
3183
|
-
createdAt: string;
|
|
3184
|
-
/** Format: date-time */
|
|
3185
|
-
updatedAt: string;
|
|
3186
|
-
createdBy: string;
|
|
3187
|
-
}[];
|
|
3188
|
-
};
|
|
3189
|
-
};
|
|
3190
|
-
/** @description No access to this resource. */
|
|
3191
|
-
403: {
|
|
3192
|
-
headers: {
|
|
3193
|
-
[name: string]: unknown;
|
|
3194
|
-
};
|
|
3195
|
-
content?: never;
|
|
3196
|
-
};
|
|
3197
|
-
};
|
|
3198
|
-
};
|
|
3199
|
-
"permissions.assign": {
|
|
3200
|
-
parameters: {
|
|
3201
|
-
query?: never;
|
|
3347
|
+
query?: never;
|
|
3202
3348
|
header?: never;
|
|
3203
3349
|
path: {
|
|
3204
|
-
|
|
3205
|
-
|
|
3350
|
+
id: string;
|
|
3351
|
+
questionId: string;
|
|
3206
3352
|
};
|
|
3207
3353
|
cookie?: never;
|
|
3208
3354
|
};
|
|
3209
3355
|
requestBody?: {
|
|
3210
3356
|
content: {
|
|
3211
3357
|
"application/json": {
|
|
3212
|
-
|
|
3213
|
-
actor: string;
|
|
3214
|
-
/** @enum {string} */
|
|
3215
|
-
role: "owner" | "manager" | "editor" | "viewer" | "participant";
|
|
3216
|
-
} | {
|
|
3217
|
-
/**
|
|
3218
|
-
* Format: email
|
|
3219
|
-
* @description The email of the user to add or invite.
|
|
3220
|
-
*/
|
|
3221
|
-
email: string;
|
|
3222
|
-
/** @enum {string} */
|
|
3223
|
-
role: "owner" | "manager" | "editor" | "viewer" | "participant";
|
|
3224
|
-
/**
|
|
3225
|
-
* @description Whether to send an invitation email if the user does not exist. Defaults to false.
|
|
3226
|
-
* @default false
|
|
3227
|
-
*/
|
|
3228
|
-
sendInvite?: boolean;
|
|
3229
|
-
};
|
|
3230
|
-
};
|
|
3231
|
-
};
|
|
3232
|
-
responses: {
|
|
3233
|
-
/** @description The created or updated permission. */
|
|
3234
|
-
201: {
|
|
3235
|
-
headers: {
|
|
3236
|
-
[name: string]: unknown;
|
|
3237
|
-
};
|
|
3238
|
-
content: {
|
|
3239
|
-
"application/json": {
|
|
3240
|
-
actor: {
|
|
3241
|
-
id: string;
|
|
3242
|
-
name?: string;
|
|
3243
|
-
/** Format: uri */
|
|
3244
|
-
avatar?: string;
|
|
3245
|
-
/** @enum {string} */
|
|
3246
|
-
type: "user" | "group" | "org";
|
|
3247
|
-
/** @enum {string} */
|
|
3248
|
-
orgRole?: "owner" | "admin" | "teacher" | "student" | "member";
|
|
3249
|
-
};
|
|
3250
|
-
/** @enum {string} */
|
|
3251
|
-
role: "owner" | "manager" | "editor" | "viewer" | "participant";
|
|
3252
|
-
/** Format: date-time */
|
|
3253
|
-
createdAt: string;
|
|
3254
|
-
/** Format: date-time */
|
|
3255
|
-
updatedAt: string;
|
|
3256
|
-
createdBy: string;
|
|
3257
|
-
};
|
|
3258
|
-
};
|
|
3259
|
-
};
|
|
3260
|
-
/** @description No access to manage this resource. */
|
|
3261
|
-
403: {
|
|
3262
|
-
headers: {
|
|
3263
|
-
[name: string]: unknown;
|
|
3358
|
+
message: string;
|
|
3264
3359
|
};
|
|
3265
|
-
content?: never;
|
|
3266
3360
|
};
|
|
3267
3361
|
};
|
|
3362
|
+
responses: never;
|
|
3268
3363
|
};
|
|
3269
|
-
"
|
|
3364
|
+
"exams.export.qti3Zip": {
|
|
3270
3365
|
parameters: {
|
|
3271
3366
|
query?: never;
|
|
3272
3367
|
header?: never;
|
|
3273
3368
|
path: {
|
|
3274
|
-
|
|
3275
|
-
actor: ((string) | "me") | string;
|
|
3276
|
-
/** @description The ID of the resource to check role for, e.g. `exam_1234`. */
|
|
3277
|
-
resource: string;
|
|
3369
|
+
id: string;
|
|
3278
3370
|
};
|
|
3279
3371
|
cookie?: never;
|
|
3280
3372
|
};
|
|
3281
3373
|
requestBody?: never;
|
|
3282
3374
|
responses: {
|
|
3283
|
-
/** @description
|
|
3375
|
+
/** @description URL to download the exported QTI ZIP package. */
|
|
3284
3376
|
200: {
|
|
3285
3377
|
headers: {
|
|
3286
3378
|
[name: string]: unknown;
|
|
3287
3379
|
};
|
|
3288
3380
|
content: {
|
|
3289
3381
|
"application/json": {
|
|
3290
|
-
|
|
3291
|
-
|
|
3292
|
-
|
|
3293
|
-
|
|
3294
|
-
|
|
3295
|
-
/** @enum {string} */
|
|
3296
|
-
type: "user" | "group" | "org";
|
|
3297
|
-
/** @enum {string} */
|
|
3298
|
-
orgRole?: "owner" | "admin" | "teacher" | "student" | "member";
|
|
3299
|
-
};
|
|
3300
|
-
/** @enum {string} */
|
|
3301
|
-
role: "owner" | "manager" | "editor" | "viewer" | "participant";
|
|
3302
|
-
/** Format: date-time */
|
|
3303
|
-
createdAt: string;
|
|
3304
|
-
/** Format: date-time */
|
|
3305
|
-
updatedAt: string;
|
|
3306
|
-
createdBy: string;
|
|
3382
|
+
/**
|
|
3383
|
+
* Format: uri
|
|
3384
|
+
* @description URL to download the exported QTI ZIP package.
|
|
3385
|
+
*/
|
|
3386
|
+
url: string;
|
|
3307
3387
|
};
|
|
3308
3388
|
};
|
|
3309
3389
|
};
|
|
3310
|
-
/** @description No access to this resource. */
|
|
3311
|
-
403: {
|
|
3312
|
-
headers: {
|
|
3313
|
-
[name: string]: unknown;
|
|
3314
|
-
};
|
|
3315
|
-
content?: never;
|
|
3316
|
-
};
|
|
3317
|
-
/** @description The specified actor has no access to the specified resource. */
|
|
3318
|
-
404: {
|
|
3319
|
-
headers: {
|
|
3320
|
-
[name: string]: unknown;
|
|
3321
|
-
};
|
|
3322
|
-
content?: never;
|
|
3323
|
-
};
|
|
3324
3390
|
};
|
|
3325
3391
|
};
|
|
3326
|
-
"
|
|
3392
|
+
"exams.export.qti21Zip": {
|
|
3327
3393
|
parameters: {
|
|
3328
3394
|
query?: never;
|
|
3329
3395
|
header?: never;
|
|
3330
3396
|
path: {
|
|
3331
|
-
|
|
3332
|
-
actor: (string) | string;
|
|
3397
|
+
id: string;
|
|
3333
3398
|
};
|
|
3334
3399
|
cookie?: never;
|
|
3335
3400
|
};
|
|
3336
3401
|
requestBody?: never;
|
|
3337
3402
|
responses: {
|
|
3338
|
-
/** @description
|
|
3403
|
+
/** @description URL to download the exported QTI ZIP package. */
|
|
3339
3404
|
200: {
|
|
3340
3405
|
headers: {
|
|
3341
3406
|
[name: string]: unknown;
|
|
3342
3407
|
};
|
|
3343
|
-
content
|
|
3344
|
-
|
|
3345
|
-
|
|
3346
|
-
|
|
3347
|
-
|
|
3348
|
-
|
|
3408
|
+
content: {
|
|
3409
|
+
"application/json": {
|
|
3410
|
+
/**
|
|
3411
|
+
* Format: uri
|
|
3412
|
+
* @description URL to download the exported QTI ZIP package.
|
|
3413
|
+
*/
|
|
3414
|
+
url: string;
|
|
3415
|
+
};
|
|
3349
3416
|
};
|
|
3350
|
-
content?: never;
|
|
3351
3417
|
};
|
|
3352
3418
|
};
|
|
3353
3419
|
};
|
|
3354
|
-
"
|
|
3355
|
-
parameters: {
|
|
3356
|
-
query?: never;
|
|
3357
|
-
header?: never;
|
|
3358
|
-
path?: never;
|
|
3359
|
-
cookie?: never;
|
|
3360
|
-
};
|
|
3361
|
-
requestBody?: never;
|
|
3362
|
-
responses: never;
|
|
3363
|
-
};
|
|
3364
|
-
"users.list": {
|
|
3420
|
+
"exams.list": {
|
|
3365
3421
|
parameters: {
|
|
3366
|
-
query?:
|
|
3422
|
+
query?: {
|
|
3423
|
+
/** @description Optional filter by folder ID, e.g. `folder_1234`. */
|
|
3424
|
+
folder?: string;
|
|
3425
|
+
/** @description Optional filter by permission role. */
|
|
3426
|
+
role?: "owner" | "manager" | "editor" | "viewer" | "participant";
|
|
3427
|
+
};
|
|
3367
3428
|
header?: never;
|
|
3368
3429
|
path?: never;
|
|
3369
3430
|
cookie?: never;
|
|
@@ -3371,7 +3432,7 @@ interface operations {
|
|
|
3371
3432
|
requestBody?: never;
|
|
3372
3433
|
responses: never;
|
|
3373
3434
|
};
|
|
3374
|
-
"
|
|
3435
|
+
"exams.create": {
|
|
3375
3436
|
parameters: {
|
|
3376
3437
|
query?: never;
|
|
3377
3438
|
header?: never;
|
|
@@ -3381,104 +3442,117 @@ interface operations {
|
|
|
3381
3442
|
requestBody?: {
|
|
3382
3443
|
content: {
|
|
3383
3444
|
"application/json": {
|
|
3384
|
-
|
|
3385
|
-
|
|
3386
|
-
|
|
3387
|
-
|
|
3388
|
-
|
|
3389
|
-
|
|
3390
|
-
|
|
3391
|
-
|
|
3392
|
-
|
|
3393
|
-
|
|
3394
|
-
|
|
3395
|
-
|
|
3396
|
-
|
|
3397
|
-
|
|
3398
|
-
|
|
3399
|
-
|
|
3400
|
-
|
|
3401
|
-
|
|
3402
|
-
|
|
3403
|
-
|
|
3404
|
-
|
|
3405
|
-
|
|
3406
|
-
|
|
3407
|
-
|
|
3408
|
-
|
|
3409
|
-
|
|
3410
|
-
|
|
3411
|
-
|
|
3412
|
-
|
|
3413
|
-
|
|
3414
|
-
|
|
3415
|
-
|
|
3416
|
-
|
|
3417
|
-
|
|
3418
|
-
|
|
3419
|
-
|
|
3420
|
-
|
|
3421
|
-
|
|
3422
|
-
|
|
3423
|
-
|
|
3424
|
-
|
|
3425
|
-
|
|
3426
|
-
|
|
3427
|
-
|
|
3428
|
-
|
|
3429
|
-
|
|
3430
|
-
|
|
3431
|
-
|
|
3445
|
+
name: string;
|
|
3446
|
+
sourceMaterialIds?: string[] | null;
|
|
3447
|
+
context?: string | null;
|
|
3448
|
+
studentLevel?: string | null;
|
|
3449
|
+
subject?: string | null;
|
|
3450
|
+
language?: string | null;
|
|
3451
|
+
taxonomyId?: string | null;
|
|
3452
|
+
intendedDuration?: unknown | null;
|
|
3453
|
+
allowedGenerationQuestionTypes?: string[] | null;
|
|
3454
|
+
metadata?: {
|
|
3455
|
+
[key: string]: string | number | boolean | null;
|
|
3456
|
+
} | null;
|
|
3457
|
+
questions?: ({
|
|
3458
|
+
/** @description Question ID */
|
|
3459
|
+
id?: string;
|
|
3460
|
+
/** @description ID of the question type */
|
|
3461
|
+
type?: string;
|
|
3462
|
+
/** @description Title for the question (stem) */
|
|
3463
|
+
title?: string | null;
|
|
3464
|
+
/** @description Optional description for the question */
|
|
3465
|
+
description?: string | null;
|
|
3466
|
+
/** @description Settings for the question, often specific to the question type */
|
|
3467
|
+
settings?: {
|
|
3468
|
+
[key: string]: unknown;
|
|
3469
|
+
};
|
|
3470
|
+
/** @description Scoring configuration for the question */
|
|
3471
|
+
scoring?: {
|
|
3472
|
+
/** @description The type of rubric. Different rubric types have different shapes. */
|
|
3473
|
+
rubricType?: ("simple" | "analytical" | "holistic" | "exact-values") | null;
|
|
3474
|
+
/** @description The criteria for scoring the question. For 'simple' rubric type, criteria have no levels, and their points stack (total = sum of points for all criteria that apply). For 'analytical' rubric type, there should be at least one criteria, with levels. For each criteria, a matching level is picked. For 'holistic' rubric type, there should be multiple criteria, without levels (score = single selected criteria). For 'exact-values' rubric type, each criteria represents a specific value that must be matched exactly. */
|
|
3475
|
+
criteria?: {
|
|
3476
|
+
id: string;
|
|
3477
|
+
/** @description The title of the scoring criterion or level. Only applies to analytical levels and holistic criteria. */
|
|
3478
|
+
title?: string | null;
|
|
3479
|
+
/** @description The description of the scoring criterion or level. For analytical levels, this describes the specific requirements to earn the points for that level. For holistic criteria, this describes the overall requirement to earn the points for that criterion. */
|
|
3480
|
+
description?: string | null;
|
|
3481
|
+
/** @description The default amount of points to assign if this criterion or level is selected. */
|
|
3482
|
+
points?: number | null;
|
|
3483
|
+
/** @description The minimum amount of points that can be assigned if this criterion or level is selected. */
|
|
3484
|
+
minPoints?: number | null;
|
|
3485
|
+
/** @description The maximum amount of points that can be assigned if this criterion or level is selected. */
|
|
3486
|
+
maxPoints?: number | null;
|
|
3487
|
+
/** @description The levels of a analytical rubric criterion. Each level represents a different point value and description for the same criterion. */
|
|
3488
|
+
levels?: {
|
|
3489
|
+
id: string;
|
|
3490
|
+
/** @description The title of the scoring criterion or level. Only applies to analytical levels and holistic criteria. */
|
|
3491
|
+
title?: string | null;
|
|
3492
|
+
/** @description The description of the scoring criterion or level. For analytical levels, this describes the specific requirements to earn the points for that level. For holistic criteria, this describes the overall requirement to earn the points for that criterion. */
|
|
3493
|
+
description?: string | null;
|
|
3494
|
+
/** @description The default amount of points to assign if this criterion or level is selected. */
|
|
3495
|
+
points?: number | null;
|
|
3496
|
+
/** @description The minimum amount of points that can be assigned if this criterion or level is selected. */
|
|
3497
|
+
minPoints?: number | null;
|
|
3498
|
+
/** @description The maximum amount of points that can be assigned if this criterion or level is selected. */
|
|
3499
|
+
maxPoints?: number | null;
|
|
3500
|
+
}[] | null;
|
|
3501
|
+
}[] | null;
|
|
3502
|
+
/** @description Whether exact values matching should be case insensitive. Only applicable for 'exact-values' rubric type. */
|
|
3503
|
+
exactValuesCaseInsensitive?: boolean | null;
|
|
3504
|
+
/** @description Optional additional grading guidance text. */
|
|
3505
|
+
guidance?: string | null;
|
|
3506
|
+
/** @description Optional example model answer text to show to graders. */
|
|
3507
|
+
modelAnswer?: string | null;
|
|
3508
|
+
/** @description The ID of the scoring template applied, if any. */
|
|
3509
|
+
templateId?: string | null;
|
|
3510
|
+
} | null;
|
|
3511
|
+
/** @description Tags associated with the question for categorization and search */
|
|
3512
|
+
tags?: string[] | null;
|
|
3513
|
+
/** @description Optional external ID for the question, used to link to external systems */
|
|
3514
|
+
externalId?: string | null;
|
|
3515
|
+
/** @description Metadata for the question */
|
|
3516
|
+
metadata?: {
|
|
3517
|
+
[key: string]: string | number | boolean | null;
|
|
3518
|
+
} | null;
|
|
3519
|
+
/** @description Version number, incremented when question is edited */
|
|
3520
|
+
v?: number | null;
|
|
3521
|
+
/** @description ID of the question in the question bank */
|
|
3522
|
+
questionBankItemId?: string | null;
|
|
3523
|
+
/** @description Trace IDs for internal tracking of AI generation processes */
|
|
3524
|
+
traceIds?: string[] | null;
|
|
3525
|
+
} & {
|
|
3526
|
+
[key: string]: unknown;
|
|
3527
|
+
})[] | null;
|
|
3528
|
+
permissions?: {
|
|
3529
|
+
actor: string;
|
|
3530
|
+
/** @enum {string} */
|
|
3531
|
+
role: "owner" | "manager" | "editor" | "viewer" | "participant";
|
|
3532
|
+
}[] | null;
|
|
3533
|
+
};
|
|
3432
3534
|
};
|
|
3433
|
-
cookie?: never;
|
|
3434
3535
|
};
|
|
3435
|
-
requestBody?: never;
|
|
3436
3536
|
responses: never;
|
|
3437
3537
|
};
|
|
3438
|
-
"exams.
|
|
3538
|
+
"exams.import": {
|
|
3439
3539
|
parameters: {
|
|
3440
3540
|
query?: never;
|
|
3441
3541
|
header?: never;
|
|
3442
|
-
path
|
|
3443
|
-
id: string;
|
|
3444
|
-
};
|
|
3542
|
+
path?: never;
|
|
3445
3543
|
cookie?: never;
|
|
3446
3544
|
};
|
|
3447
3545
|
requestBody?: {
|
|
3448
3546
|
content: {
|
|
3449
3547
|
"application/json": {
|
|
3450
|
-
|
|
3451
|
-
|
|
3452
|
-
* @default manual
|
|
3453
|
-
* @enum {string}
|
|
3454
|
-
*/
|
|
3455
|
-
source?: "online-assessment" | "document-scanner" | "answer-bot" | "manual";
|
|
3456
|
-
answers?: {
|
|
3457
|
-
question: string;
|
|
3458
|
-
value?: (string | (string | null)[]) | null;
|
|
3459
|
-
completed?: boolean | null;
|
|
3460
|
-
context?: unknown | null;
|
|
3461
|
-
pointsAwarded?: number | null;
|
|
3462
|
-
pointsToEarn?: number | null;
|
|
3463
|
-
feedback?: string | null;
|
|
3464
|
-
scoringCriteria?: unknown | null;
|
|
3465
|
-
/** Format: date-time */
|
|
3466
|
-
savedAt?: string;
|
|
3467
|
-
gradedAt?: string | null;
|
|
3468
|
-
gradedBy?: string | null;
|
|
3469
|
-
gradingStatus?: ("graded" | "auto-graded") | null;
|
|
3470
|
-
originalValue?: (string | (string | null)[]) | null;
|
|
3471
|
-
editedBy?: string | null;
|
|
3472
|
-
editedAt?: string | null;
|
|
3473
|
-
masteryTopicId?: string | null;
|
|
3474
|
-
traceIds?: string[] | null;
|
|
3475
|
-
}[];
|
|
3548
|
+
name: string;
|
|
3549
|
+
sourceMaterialIds?: string[];
|
|
3476
3550
|
};
|
|
3477
3551
|
};
|
|
3478
3552
|
};
|
|
3479
3553
|
responses: never;
|
|
3480
3554
|
};
|
|
3481
|
-
"exams.
|
|
3555
|
+
"exams.get": {
|
|
3482
3556
|
parameters: {
|
|
3483
3557
|
query?: never;
|
|
3484
3558
|
header?: never;
|
|
@@ -3490,274 +3564,367 @@ interface operations {
|
|
|
3490
3564
|
requestBody?: never;
|
|
3491
3565
|
responses: never;
|
|
3492
3566
|
};
|
|
3493
|
-
"exams.
|
|
3494
|
-
parameters: {
|
|
3495
|
-
query?: never;
|
|
3496
|
-
header?: never;
|
|
3497
|
-
path: {
|
|
3498
|
-
id: string;
|
|
3499
|
-
};
|
|
3500
|
-
cookie?: never;
|
|
3501
|
-
};
|
|
3502
|
-
requestBody?: {
|
|
3503
|
-
content: {
|
|
3504
|
-
"application/json": {
|
|
3505
|
-
/** Format: uri */
|
|
3506
|
-
documentUrl: string;
|
|
3507
|
-
};
|
|
3508
|
-
};
|
|
3509
|
-
};
|
|
3510
|
-
responses: never;
|
|
3511
|
-
};
|
|
3512
|
-
"exams.sessions.get": {
|
|
3567
|
+
"exams.update": {
|
|
3513
3568
|
parameters: {
|
|
3514
3569
|
query?: never;
|
|
3515
3570
|
header?: never;
|
|
3516
3571
|
path: {
|
|
3517
3572
|
id: string;
|
|
3518
|
-
sessionId: string;
|
|
3519
3573
|
};
|
|
3520
3574
|
cookie?: never;
|
|
3521
3575
|
};
|
|
3522
3576
|
requestBody?: never;
|
|
3523
3577
|
responses: never;
|
|
3524
3578
|
};
|
|
3525
|
-
"exams.
|
|
3579
|
+
"exams.delete": {
|
|
3526
3580
|
parameters: {
|
|
3527
3581
|
query?: never;
|
|
3528
3582
|
header?: never;
|
|
3529
3583
|
path: {
|
|
3530
3584
|
id: string;
|
|
3531
|
-
sessionId: string;
|
|
3532
3585
|
};
|
|
3533
3586
|
cookie?: never;
|
|
3534
3587
|
};
|
|
3535
3588
|
requestBody?: never;
|
|
3536
3589
|
responses: never;
|
|
3537
3590
|
};
|
|
3538
|
-
"exams.
|
|
3591
|
+
"exams.duplicate": {
|
|
3539
3592
|
parameters: {
|
|
3540
3593
|
query?: never;
|
|
3541
3594
|
header?: never;
|
|
3542
3595
|
path: {
|
|
3543
3596
|
id: string;
|
|
3544
|
-
sessionId: string;
|
|
3545
3597
|
};
|
|
3546
3598
|
cookie?: never;
|
|
3547
3599
|
};
|
|
3548
3600
|
requestBody?: {
|
|
3549
3601
|
content: {
|
|
3550
3602
|
"application/json": {
|
|
3551
|
-
|
|
3552
|
-
|
|
3553
|
-
/** @description Points to award for the answer */
|
|
3554
|
-
pointsAwarded?: number;
|
|
3555
|
-
/** @description Optional teacher feedback for the answer */
|
|
3556
|
-
feedback?: string;
|
|
3603
|
+
name: string;
|
|
3604
|
+
includeSessions?: boolean;
|
|
3557
3605
|
};
|
|
3558
3606
|
};
|
|
3559
3607
|
};
|
|
3560
3608
|
responses: never;
|
|
3561
3609
|
};
|
|
3562
|
-
"exams.
|
|
3610
|
+
"exams.print": {
|
|
3563
3611
|
parameters: {
|
|
3564
3612
|
query?: never;
|
|
3565
3613
|
header?: never;
|
|
3566
3614
|
path: {
|
|
3567
3615
|
id: string;
|
|
3568
|
-
sessionId: string;
|
|
3569
3616
|
};
|
|
3570
3617
|
cookie?: never;
|
|
3571
3618
|
};
|
|
3572
|
-
requestBody?:
|
|
3573
|
-
content: {
|
|
3574
|
-
"application/json": {
|
|
3575
|
-
/** @description Teacher feedback for the test as a whole */
|
|
3576
|
-
feedback?: string | null;
|
|
3577
|
-
};
|
|
3578
|
-
};
|
|
3579
|
-
};
|
|
3619
|
+
requestBody?: never;
|
|
3580
3620
|
responses: never;
|
|
3581
3621
|
};
|
|
3582
|
-
"exams.
|
|
3622
|
+
"exams.startGeneration": {
|
|
3583
3623
|
parameters: {
|
|
3584
3624
|
query?: never;
|
|
3585
3625
|
header?: never;
|
|
3586
3626
|
path: {
|
|
3587
3627
|
id: string;
|
|
3588
|
-
sessionId: string;
|
|
3589
3628
|
};
|
|
3590
3629
|
cookie?: never;
|
|
3591
3630
|
};
|
|
3592
3631
|
requestBody?: never;
|
|
3593
3632
|
responses: never;
|
|
3594
3633
|
};
|
|
3595
|
-
"exams.
|
|
3634
|
+
"exams.cancelGeneration": {
|
|
3596
3635
|
parameters: {
|
|
3597
3636
|
query?: never;
|
|
3598
3637
|
header?: never;
|
|
3599
3638
|
path: {
|
|
3600
3639
|
id: string;
|
|
3601
|
-
sessionId: string;
|
|
3602
3640
|
};
|
|
3603
3641
|
cookie?: never;
|
|
3604
3642
|
};
|
|
3605
3643
|
requestBody?: never;
|
|
3606
3644
|
responses: never;
|
|
3607
3645
|
};
|
|
3608
|
-
"exams.
|
|
3646
|
+
"exams.getContextSuggestions": {
|
|
3609
3647
|
parameters: {
|
|
3610
3648
|
query?: never;
|
|
3611
3649
|
header?: never;
|
|
3612
3650
|
path: {
|
|
3613
3651
|
id: string;
|
|
3614
|
-
sessionId: string;
|
|
3615
|
-
questionId: string;
|
|
3616
3652
|
};
|
|
3617
3653
|
cookie?: never;
|
|
3618
3654
|
};
|
|
3619
3655
|
requestBody?: never;
|
|
3620
3656
|
responses: never;
|
|
3621
3657
|
};
|
|
3622
|
-
"
|
|
3658
|
+
"me.get": {
|
|
3623
3659
|
parameters: {
|
|
3624
3660
|
query?: never;
|
|
3625
3661
|
header?: never;
|
|
3626
|
-
path
|
|
3627
|
-
id: string;
|
|
3628
|
-
sessionId: string;
|
|
3629
|
-
questionId: string;
|
|
3630
|
-
};
|
|
3662
|
+
path?: never;
|
|
3631
3663
|
cookie?: never;
|
|
3632
3664
|
};
|
|
3633
|
-
requestBody?:
|
|
3634
|
-
content: {
|
|
3635
|
-
"application/json": {
|
|
3636
|
-
answer: {
|
|
3637
|
-
question: string;
|
|
3638
|
-
value?: (string | (string | null)[]) | null;
|
|
3639
|
-
completed?: boolean | null;
|
|
3640
|
-
context?: unknown | null;
|
|
3641
|
-
};
|
|
3642
|
-
/** @description Whether to automatically grade the answer after editing */
|
|
3643
|
-
autoGrade?: boolean;
|
|
3644
|
-
};
|
|
3645
|
-
};
|
|
3646
|
-
};
|
|
3665
|
+
requestBody?: never;
|
|
3647
3666
|
responses: never;
|
|
3648
3667
|
};
|
|
3649
|
-
"
|
|
3668
|
+
"me.update": {
|
|
3650
3669
|
parameters: {
|
|
3651
3670
|
query?: never;
|
|
3652
3671
|
header?: never;
|
|
3653
|
-
path
|
|
3654
|
-
id: string;
|
|
3655
|
-
};
|
|
3672
|
+
path?: never;
|
|
3656
3673
|
cookie?: never;
|
|
3657
3674
|
};
|
|
3658
3675
|
requestBody?: {
|
|
3659
3676
|
content: {
|
|
3660
3677
|
"application/json": {
|
|
3661
|
-
/** @description
|
|
3678
|
+
/** @description The user's name */
|
|
3662
3679
|
name?: string;
|
|
3663
|
-
/** @description
|
|
3664
|
-
|
|
3665
|
-
|
|
3666
|
-
|
|
3667
|
-
/** @description Content of the file as a string, as an alternative to URL. Only supported for exports from other systems (e.g. Moodle XML). */
|
|
3668
|
-
content?: string;
|
|
3669
|
-
/** @description Whether to keep existing exam settings when importing questions via AI. */
|
|
3670
|
-
keepExistingSettings?: boolean;
|
|
3680
|
+
/** @description A map of user preferences */
|
|
3681
|
+
preferences?: {
|
|
3682
|
+
[key: string]: unknown;
|
|
3683
|
+
};
|
|
3671
3684
|
};
|
|
3672
3685
|
};
|
|
3673
3686
|
};
|
|
3674
3687
|
responses: never;
|
|
3675
3688
|
};
|
|
3676
|
-
"
|
|
3689
|
+
"media.upload": {
|
|
3677
3690
|
parameters: {
|
|
3678
|
-
query?:
|
|
3679
|
-
|
|
3680
|
-
|
|
3681
|
-
|
|
3691
|
+
query?: {
|
|
3692
|
+
/** @description Original attachment filename */
|
|
3693
|
+
filename?: string;
|
|
3694
|
+
/** @description Category of file, used for grouping */
|
|
3695
|
+
type?: string;
|
|
3696
|
+
/** @description MIME type of the attachment */
|
|
3697
|
+
contentType?: string;
|
|
3682
3698
|
};
|
|
3699
|
+
header?: never;
|
|
3700
|
+
path?: never;
|
|
3683
3701
|
cookie?: never;
|
|
3684
3702
|
};
|
|
3685
|
-
requestBody?:
|
|
3686
|
-
|
|
3687
|
-
|
|
3688
|
-
|
|
3689
|
-
|
|
3703
|
+
requestBody?: never;
|
|
3704
|
+
responses: {
|
|
3705
|
+
200: {
|
|
3706
|
+
headers: {
|
|
3707
|
+
[name: string]: unknown;
|
|
3708
|
+
};
|
|
3709
|
+
content: {
|
|
3710
|
+
"application/json": {
|
|
3711
|
+
/** Format: uri */
|
|
3712
|
+
uploadUrl?: string;
|
|
3713
|
+
/** Format: uri */
|
|
3714
|
+
publicUrl?: string;
|
|
3715
|
+
};
|
|
3690
3716
|
};
|
|
3691
3717
|
};
|
|
3692
3718
|
};
|
|
3719
|
+
};
|
|
3720
|
+
"org.get": {
|
|
3721
|
+
parameters: {
|
|
3722
|
+
query?: never;
|
|
3723
|
+
header?: never;
|
|
3724
|
+
path?: never;
|
|
3725
|
+
cookie?: never;
|
|
3726
|
+
};
|
|
3727
|
+
requestBody?: never;
|
|
3693
3728
|
responses: never;
|
|
3694
3729
|
};
|
|
3695
|
-
"
|
|
3730
|
+
"org.delete": {
|
|
3696
3731
|
parameters: {
|
|
3697
|
-
query?:
|
|
3698
|
-
/** @description The format to return the question in. `examplary_json` returns the question in the Examplary JSON format, while `qti_v3p0` and `qti_v2p1` return the question in QTI format version 3 and 2.1 respectively. */
|
|
3699
|
-
format?: "examplary_json" | "qti_v3p0" | "qti_v2p1";
|
|
3700
|
-
};
|
|
3732
|
+
query?: never;
|
|
3701
3733
|
header?: never;
|
|
3702
|
-
path
|
|
3703
|
-
/** @description Exam ID, e.g. `exam_1234`. */
|
|
3704
|
-
id: string;
|
|
3705
|
-
/** @description Question ID, e.g. `question_1234`, or `first` to get the first question. */
|
|
3706
|
-
questionId: string;
|
|
3707
|
-
};
|
|
3734
|
+
path?: never;
|
|
3708
3735
|
cookie?: never;
|
|
3709
3736
|
};
|
|
3710
3737
|
requestBody?: never;
|
|
3711
3738
|
responses: never;
|
|
3712
3739
|
};
|
|
3713
|
-
"
|
|
3740
|
+
"org.update": {
|
|
3714
3741
|
parameters: {
|
|
3715
3742
|
query?: never;
|
|
3716
3743
|
header?: never;
|
|
3717
|
-
path
|
|
3718
|
-
|
|
3719
|
-
|
|
3744
|
+
path?: never;
|
|
3745
|
+
cookie?: never;
|
|
3746
|
+
};
|
|
3747
|
+
requestBody?: {
|
|
3748
|
+
content: {
|
|
3749
|
+
"application/json": {
|
|
3750
|
+
name?: string;
|
|
3751
|
+
logoImageUrl?: string;
|
|
3752
|
+
menuColor?: string;
|
|
3753
|
+
accentColor?: string;
|
|
3754
|
+
settings?: {
|
|
3755
|
+
/** @description Whether users can only see other users in the same groups as them. */
|
|
3756
|
+
restrictGroupVisibility?: boolean;
|
|
3757
|
+
/** @description Whether the organization blocks public link sharing. */
|
|
3758
|
+
sharingBlockPublic?: boolean;
|
|
3759
|
+
/** @description Whether the organization blocks teachers from inviting new users. */
|
|
3760
|
+
sharingBlockTeachersInvitingUsers?: boolean;
|
|
3761
|
+
};
|
|
3762
|
+
};
|
|
3720
3763
|
};
|
|
3764
|
+
};
|
|
3765
|
+
responses: never;
|
|
3766
|
+
};
|
|
3767
|
+
"org.customDomain.get": {
|
|
3768
|
+
parameters: {
|
|
3769
|
+
query?: never;
|
|
3770
|
+
header?: never;
|
|
3771
|
+
path?: never;
|
|
3772
|
+
cookie?: never;
|
|
3773
|
+
};
|
|
3774
|
+
requestBody?: never;
|
|
3775
|
+
responses: never;
|
|
3776
|
+
};
|
|
3777
|
+
"org.customDomain.update": {
|
|
3778
|
+
parameters: {
|
|
3779
|
+
query?: never;
|
|
3780
|
+
header?: never;
|
|
3781
|
+
path?: never;
|
|
3721
3782
|
cookie?: never;
|
|
3722
3783
|
};
|
|
3723
3784
|
requestBody?: {
|
|
3724
3785
|
content: {
|
|
3725
3786
|
"application/json": {
|
|
3726
|
-
|
|
3787
|
+
customDomain?: string | null;
|
|
3727
3788
|
};
|
|
3728
3789
|
};
|
|
3729
3790
|
};
|
|
3730
3791
|
responses: never;
|
|
3731
3792
|
};
|
|
3732
|
-
"
|
|
3793
|
+
"orgs.list": {
|
|
3733
3794
|
parameters: {
|
|
3734
3795
|
query?: never;
|
|
3735
3796
|
header?: never;
|
|
3736
|
-
path
|
|
3737
|
-
|
|
3797
|
+
path?: never;
|
|
3798
|
+
cookie?: never;
|
|
3799
|
+
};
|
|
3800
|
+
requestBody?: never;
|
|
3801
|
+
responses: never;
|
|
3802
|
+
};
|
|
3803
|
+
"orgs.create": {
|
|
3804
|
+
parameters: {
|
|
3805
|
+
query?: never;
|
|
3806
|
+
header?: never;
|
|
3807
|
+
path?: never;
|
|
3808
|
+
cookie?: never;
|
|
3809
|
+
};
|
|
3810
|
+
requestBody?: {
|
|
3811
|
+
content: {
|
|
3812
|
+
"application/json": {
|
|
3813
|
+
name: string;
|
|
3814
|
+
};
|
|
3815
|
+
};
|
|
3816
|
+
};
|
|
3817
|
+
responses: never;
|
|
3818
|
+
};
|
|
3819
|
+
"audit-logs.list": {
|
|
3820
|
+
parameters: {
|
|
3821
|
+
query?: {
|
|
3822
|
+
actor?: string;
|
|
3823
|
+
object?: string;
|
|
3824
|
+
/** @description Start date (YYYY-MM-DD), inclusive */
|
|
3825
|
+
from?: string;
|
|
3826
|
+
/** @description End date (YYYY-MM-DD), inclusive */
|
|
3827
|
+
to?: string;
|
|
3828
|
+
/** @description Base64-encoded pagination cursor */
|
|
3829
|
+
exclusiveStartKey?: string;
|
|
3738
3830
|
};
|
|
3831
|
+
header?: never;
|
|
3832
|
+
path?: never;
|
|
3739
3833
|
cookie?: never;
|
|
3740
3834
|
};
|
|
3741
3835
|
requestBody?: never;
|
|
3742
|
-
responses:
|
|
3743
|
-
|
|
3744
|
-
|
|
3745
|
-
|
|
3746
|
-
|
|
3836
|
+
responses: never;
|
|
3837
|
+
};
|
|
3838
|
+
"audit-logs.export": {
|
|
3839
|
+
parameters: {
|
|
3840
|
+
query: {
|
|
3841
|
+
/** @description Start date (YYYY-MM-DD), inclusive */
|
|
3842
|
+
from: string;
|
|
3843
|
+
/** @description End date (YYYY-MM-DD), inclusive */
|
|
3844
|
+
to: string;
|
|
3845
|
+
actor?: string;
|
|
3846
|
+
object?: string;
|
|
3847
|
+
};
|
|
3848
|
+
header?: never;
|
|
3849
|
+
path?: never;
|
|
3850
|
+
cookie?: never;
|
|
3851
|
+
};
|
|
3852
|
+
requestBody?: never;
|
|
3853
|
+
responses: never;
|
|
3854
|
+
};
|
|
3855
|
+
"apiKeys.get": {
|
|
3856
|
+
parameters: {
|
|
3857
|
+
query?: never;
|
|
3858
|
+
header?: never;
|
|
3859
|
+
path?: never;
|
|
3860
|
+
cookie?: never;
|
|
3861
|
+
};
|
|
3862
|
+
requestBody?: never;
|
|
3863
|
+
responses: never;
|
|
3864
|
+
};
|
|
3865
|
+
"apiKeys.reset": {
|
|
3866
|
+
parameters: {
|
|
3867
|
+
query?: never;
|
|
3868
|
+
header?: never;
|
|
3869
|
+
path?: never;
|
|
3870
|
+
cookie?: never;
|
|
3871
|
+
};
|
|
3872
|
+
requestBody?: never;
|
|
3873
|
+
responses: never;
|
|
3874
|
+
};
|
|
3875
|
+
"attributes.list": {
|
|
3876
|
+
parameters: {
|
|
3877
|
+
query?: never;
|
|
3878
|
+
header?: never;
|
|
3879
|
+
path?: never;
|
|
3880
|
+
cookie?: never;
|
|
3881
|
+
};
|
|
3882
|
+
requestBody?: never;
|
|
3883
|
+
responses: never;
|
|
3884
|
+
};
|
|
3885
|
+
"attributes.create": {
|
|
3886
|
+
parameters: {
|
|
3887
|
+
query?: never;
|
|
3888
|
+
header?: never;
|
|
3889
|
+
path?: never;
|
|
3890
|
+
cookie?: never;
|
|
3891
|
+
};
|
|
3892
|
+
requestBody?: {
|
|
3893
|
+
content: {
|
|
3894
|
+
"application/json": {
|
|
3895
|
+
name: string;
|
|
3896
|
+
/** @enum {string} */
|
|
3897
|
+
attributeType: "string" | "category" | "studentLevel" | "subject";
|
|
3898
|
+
options?: string[];
|
|
3899
|
+
showInStudentDashboard?: boolean;
|
|
3900
|
+
showAsStudentPreference?: boolean;
|
|
3901
|
+
position?: number;
|
|
3902
|
+
appearanceColor?: (string) | null;
|
|
3747
3903
|
};
|
|
3748
|
-
|
|
3749
|
-
|
|
3750
|
-
|
|
3751
|
-
|
|
3752
|
-
|
|
3753
|
-
|
|
3754
|
-
|
|
3755
|
-
|
|
3904
|
+
};
|
|
3905
|
+
};
|
|
3906
|
+
responses: never;
|
|
3907
|
+
};
|
|
3908
|
+
"attributes.reorder": {
|
|
3909
|
+
parameters: {
|
|
3910
|
+
query?: never;
|
|
3911
|
+
header?: never;
|
|
3912
|
+
path?: never;
|
|
3913
|
+
cookie?: never;
|
|
3914
|
+
};
|
|
3915
|
+
requestBody?: {
|
|
3916
|
+
content: {
|
|
3917
|
+
"application/json": {
|
|
3918
|
+
order: {
|
|
3919
|
+
id: string;
|
|
3920
|
+
position: number;
|
|
3921
|
+
}[];
|
|
3756
3922
|
};
|
|
3757
3923
|
};
|
|
3758
3924
|
};
|
|
3925
|
+
responses: never;
|
|
3759
3926
|
};
|
|
3760
|
-
"
|
|
3927
|
+
"attributes.update": {
|
|
3761
3928
|
parameters: {
|
|
3762
3929
|
query?: never;
|
|
3763
3930
|
header?: never;
|
|
@@ -3766,33 +3933,37 @@ interface operations {
|
|
|
3766
3933
|
};
|
|
3767
3934
|
cookie?: never;
|
|
3768
3935
|
};
|
|
3769
|
-
requestBody?:
|
|
3770
|
-
|
|
3771
|
-
|
|
3772
|
-
|
|
3773
|
-
|
|
3774
|
-
|
|
3775
|
-
|
|
3776
|
-
|
|
3777
|
-
|
|
3778
|
-
|
|
3779
|
-
|
|
3780
|
-
* @description URL to download the exported QTI ZIP package.
|
|
3781
|
-
*/
|
|
3782
|
-
url: string;
|
|
3783
|
-
};
|
|
3936
|
+
requestBody?: {
|
|
3937
|
+
content: {
|
|
3938
|
+
"application/json": {
|
|
3939
|
+
name?: string;
|
|
3940
|
+
/** @enum {string} */
|
|
3941
|
+
attributeType?: "string" | "category" | "studentLevel" | "subject";
|
|
3942
|
+
options?: string[];
|
|
3943
|
+
showInStudentDashboard?: boolean;
|
|
3944
|
+
showAsStudentPreference?: boolean;
|
|
3945
|
+
position?: number;
|
|
3946
|
+
appearanceColor?: (string) | null;
|
|
3784
3947
|
};
|
|
3785
3948
|
};
|
|
3786
3949
|
};
|
|
3950
|
+
responses: never;
|
|
3787
3951
|
};
|
|
3788
|
-
"
|
|
3952
|
+
"attributes.delete": {
|
|
3789
3953
|
parameters: {
|
|
3790
|
-
query?:
|
|
3791
|
-
|
|
3792
|
-
|
|
3793
|
-
|
|
3794
|
-
role?: "owner" | "manager" | "editor" | "viewer" | "participant";
|
|
3954
|
+
query?: never;
|
|
3955
|
+
header?: never;
|
|
3956
|
+
path: {
|
|
3957
|
+
id: string;
|
|
3795
3958
|
};
|
|
3959
|
+
cookie?: never;
|
|
3960
|
+
};
|
|
3961
|
+
requestBody?: never;
|
|
3962
|
+
responses: never;
|
|
3963
|
+
};
|
|
3964
|
+
"taxonomies.list": {
|
|
3965
|
+
parameters: {
|
|
3966
|
+
query?: never;
|
|
3796
3967
|
header?: never;
|
|
3797
3968
|
path?: never;
|
|
3798
3969
|
cookie?: never;
|
|
@@ -3800,7 +3971,7 @@ interface operations {
|
|
|
3800
3971
|
requestBody?: never;
|
|
3801
3972
|
responses: never;
|
|
3802
3973
|
};
|
|
3803
|
-
"
|
|
3974
|
+
"taxonomies.create": {
|
|
3804
3975
|
parameters: {
|
|
3805
3976
|
query?: never;
|
|
3806
3977
|
header?: never;
|
|
@@ -3811,195 +3982,337 @@ interface operations {
|
|
|
3811
3982
|
content: {
|
|
3812
3983
|
"application/json": {
|
|
3813
3984
|
name: string;
|
|
3814
|
-
|
|
3815
|
-
|
|
3816
|
-
|
|
3817
|
-
|
|
3818
|
-
|
|
3819
|
-
|
|
3820
|
-
|
|
3821
|
-
|
|
3822
|
-
|
|
3823
|
-
|
|
3824
|
-
|
|
3825
|
-
|
|
3826
|
-
|
|
3827
|
-
|
|
3828
|
-
|
|
3829
|
-
|
|
3830
|
-
|
|
3831
|
-
|
|
3832
|
-
|
|
3833
|
-
|
|
3834
|
-
|
|
3835
|
-
|
|
3836
|
-
|
|
3985
|
+
description?: string;
|
|
3986
|
+
instructions?: string;
|
|
3987
|
+
levels: {
|
|
3988
|
+
name?: string;
|
|
3989
|
+
instructions?: string;
|
|
3990
|
+
}[];
|
|
3991
|
+
};
|
|
3992
|
+
};
|
|
3993
|
+
};
|
|
3994
|
+
responses: never;
|
|
3995
|
+
};
|
|
3996
|
+
"taxonomies.update": {
|
|
3997
|
+
parameters: {
|
|
3998
|
+
query?: never;
|
|
3999
|
+
header?: never;
|
|
4000
|
+
path: {
|
|
4001
|
+
id: string;
|
|
4002
|
+
};
|
|
4003
|
+
cookie?: never;
|
|
4004
|
+
};
|
|
4005
|
+
requestBody?: {
|
|
4006
|
+
content: {
|
|
4007
|
+
"application/json": {
|
|
4008
|
+
name: string;
|
|
4009
|
+
description?: string;
|
|
4010
|
+
instructions?: string;
|
|
4011
|
+
levels: {
|
|
4012
|
+
name?: string;
|
|
4013
|
+
instructions?: string;
|
|
4014
|
+
}[];
|
|
4015
|
+
} & {
|
|
4016
|
+
[key: string]: unknown;
|
|
4017
|
+
};
|
|
4018
|
+
};
|
|
4019
|
+
};
|
|
4020
|
+
responses: never;
|
|
4021
|
+
};
|
|
4022
|
+
"taxonomies.delete": {
|
|
4023
|
+
parameters: {
|
|
4024
|
+
query?: never;
|
|
4025
|
+
header?: never;
|
|
4026
|
+
path: {
|
|
4027
|
+
id: string;
|
|
4028
|
+
};
|
|
4029
|
+
cookie?: never;
|
|
4030
|
+
};
|
|
4031
|
+
requestBody?: never;
|
|
4032
|
+
responses: never;
|
|
4033
|
+
};
|
|
4034
|
+
"permissions.autocomplete": {
|
|
4035
|
+
parameters: {
|
|
4036
|
+
query: {
|
|
4037
|
+
/** @description Search query (min 3 characters) */
|
|
4038
|
+
q: string;
|
|
4039
|
+
/** @description Type of entity to search */
|
|
4040
|
+
type?: "user" | "group";
|
|
4041
|
+
};
|
|
4042
|
+
header?: never;
|
|
4043
|
+
path?: never;
|
|
4044
|
+
cookie?: never;
|
|
4045
|
+
};
|
|
4046
|
+
requestBody?: never;
|
|
4047
|
+
responses: {
|
|
4048
|
+
/** @description List of matching users and groups. */
|
|
4049
|
+
200: {
|
|
4050
|
+
headers: {
|
|
4051
|
+
[name: string]: unknown;
|
|
4052
|
+
};
|
|
4053
|
+
content?: never;
|
|
4054
|
+
};
|
|
4055
|
+
/** @description Query must be at least 3 characters. */
|
|
4056
|
+
400: {
|
|
4057
|
+
headers: {
|
|
4058
|
+
[name: string]: unknown;
|
|
4059
|
+
};
|
|
4060
|
+
content?: never;
|
|
4061
|
+
};
|
|
4062
|
+
};
|
|
4063
|
+
};
|
|
4064
|
+
"permissions.list": {
|
|
4065
|
+
parameters: {
|
|
4066
|
+
query?: never;
|
|
4067
|
+
header?: never;
|
|
4068
|
+
path: {
|
|
4069
|
+
/** @description The ID of the resource to list permissions for, e.g. `exam_1234`. */
|
|
4070
|
+
resource: string;
|
|
4071
|
+
};
|
|
4072
|
+
cookie?: never;
|
|
4073
|
+
};
|
|
4074
|
+
requestBody?: never;
|
|
4075
|
+
responses: {
|
|
4076
|
+
/** @description List of permissions for the specified resource. */
|
|
4077
|
+
200: {
|
|
4078
|
+
headers: {
|
|
4079
|
+
[name: string]: unknown;
|
|
4080
|
+
};
|
|
4081
|
+
content: {
|
|
4082
|
+
"application/json": {
|
|
4083
|
+
actor: {
|
|
4084
|
+
id: string;
|
|
4085
|
+
name?: string;
|
|
4086
|
+
/** Format: uri */
|
|
4087
|
+
avatar?: string;
|
|
4088
|
+
/** @enum {string} */
|
|
4089
|
+
type: "user" | "group" | "org";
|
|
4090
|
+
/** @enum {string} */
|
|
4091
|
+
orgRole?: "owner" | "admin" | "teacher" | "student" | "member";
|
|
4092
|
+
};
|
|
4093
|
+
/** @enum {string} */
|
|
4094
|
+
role: "owner" | "manager" | "editor" | "viewer" | "participant";
|
|
4095
|
+
/** Format: date-time */
|
|
4096
|
+
createdAt: string;
|
|
4097
|
+
/** Format: date-time */
|
|
4098
|
+
updatedAt: string;
|
|
4099
|
+
createdBy: string;
|
|
4100
|
+
}[];
|
|
4101
|
+
};
|
|
4102
|
+
};
|
|
4103
|
+
/** @description No access to this resource. */
|
|
4104
|
+
403: {
|
|
4105
|
+
headers: {
|
|
4106
|
+
[name: string]: unknown;
|
|
4107
|
+
};
|
|
4108
|
+
content?: never;
|
|
4109
|
+
};
|
|
4110
|
+
};
|
|
4111
|
+
};
|
|
4112
|
+
"permissions.assign": {
|
|
4113
|
+
parameters: {
|
|
4114
|
+
query?: never;
|
|
4115
|
+
header?: never;
|
|
4116
|
+
path: {
|
|
4117
|
+
/** @description The ID of the resource to assign the permission on, e.g. `exam_1234`. */
|
|
4118
|
+
resource: string;
|
|
4119
|
+
};
|
|
4120
|
+
cookie?: never;
|
|
4121
|
+
};
|
|
4122
|
+
requestBody?: {
|
|
4123
|
+
content: {
|
|
4124
|
+
"application/json": {
|
|
4125
|
+
/** @description The ID of the actor to assign the permission to, e.g. `user_1234`, `group_1234` or `org_1234`. */
|
|
4126
|
+
actor: string;
|
|
4127
|
+
/** @enum {string} */
|
|
4128
|
+
role: "owner" | "manager" | "editor" | "viewer" | "participant";
|
|
4129
|
+
} | {
|
|
4130
|
+
/**
|
|
4131
|
+
* Format: email
|
|
4132
|
+
* @description The email of the user to add or invite.
|
|
4133
|
+
*/
|
|
4134
|
+
email: string;
|
|
4135
|
+
/** @enum {string} */
|
|
4136
|
+
role: "owner" | "manager" | "editor" | "viewer" | "participant";
|
|
4137
|
+
/**
|
|
4138
|
+
* @description Whether to send an invitation email if the user does not exist. Defaults to false.
|
|
4139
|
+
* @default false
|
|
4140
|
+
*/
|
|
4141
|
+
sendInvite?: boolean;
|
|
4142
|
+
};
|
|
4143
|
+
};
|
|
4144
|
+
};
|
|
4145
|
+
responses: {
|
|
4146
|
+
/** @description The created or updated permission. */
|
|
4147
|
+
201: {
|
|
4148
|
+
headers: {
|
|
4149
|
+
[name: string]: unknown;
|
|
4150
|
+
};
|
|
4151
|
+
content: {
|
|
4152
|
+
"application/json": {
|
|
4153
|
+
actor: {
|
|
4154
|
+
id: string;
|
|
4155
|
+
name?: string;
|
|
4156
|
+
/** Format: uri */
|
|
4157
|
+
avatar?: string;
|
|
4158
|
+
/** @enum {string} */
|
|
4159
|
+
type: "user" | "group" | "org";
|
|
4160
|
+
/** @enum {string} */
|
|
4161
|
+
orgRole?: "owner" | "admin" | "teacher" | "student" | "member";
|
|
4162
|
+
};
|
|
4163
|
+
/** @enum {string} */
|
|
4164
|
+
role: "owner" | "manager" | "editor" | "viewer" | "participant";
|
|
4165
|
+
/** Format: date-time */
|
|
4166
|
+
createdAt: string;
|
|
4167
|
+
/** Format: date-time */
|
|
4168
|
+
updatedAt: string;
|
|
4169
|
+
createdBy: string;
|
|
4170
|
+
};
|
|
4171
|
+
};
|
|
4172
|
+
};
|
|
4173
|
+
/** @description No access to manage this resource. */
|
|
4174
|
+
403: {
|
|
4175
|
+
headers: {
|
|
4176
|
+
[name: string]: unknown;
|
|
4177
|
+
};
|
|
4178
|
+
content?: never;
|
|
4179
|
+
};
|
|
4180
|
+
};
|
|
4181
|
+
};
|
|
4182
|
+
"permissions.getActorRole": {
|
|
4183
|
+
parameters: {
|
|
4184
|
+
query?: never;
|
|
4185
|
+
header?: never;
|
|
4186
|
+
path: {
|
|
4187
|
+
/** @description The ID of the actor to check role for, e.g. `user_abcd`. */
|
|
4188
|
+
actor: ((string) | "me") | string;
|
|
4189
|
+
/** @description The ID of the resource to check role for, e.g. `exam_1234`. */
|
|
4190
|
+
resource: string;
|
|
4191
|
+
};
|
|
4192
|
+
cookie?: never;
|
|
4193
|
+
};
|
|
4194
|
+
requestBody?: never;
|
|
4195
|
+
responses: {
|
|
4196
|
+
/** @description Role of the specified actor for the specified resource. */
|
|
4197
|
+
200: {
|
|
4198
|
+
headers: {
|
|
4199
|
+
[name: string]: unknown;
|
|
4200
|
+
};
|
|
4201
|
+
content: {
|
|
4202
|
+
"application/json": {
|
|
4203
|
+
actor: {
|
|
4204
|
+
id: string;
|
|
4205
|
+
name?: string;
|
|
4206
|
+
/** Format: uri */
|
|
4207
|
+
avatar?: string;
|
|
4208
|
+
/** @enum {string} */
|
|
4209
|
+
type: "user" | "group" | "org";
|
|
4210
|
+
/** @enum {string} */
|
|
4211
|
+
orgRole?: "owner" | "admin" | "teacher" | "student" | "member";
|
|
3837
4212
|
};
|
|
3838
|
-
/** @description Scoring configuration for the question */
|
|
3839
|
-
scoring?: {
|
|
3840
|
-
/** @description The type of rubric. Different rubric types have different shapes. */
|
|
3841
|
-
rubricType?: ("simple" | "analytical" | "holistic" | "exact-values") | null;
|
|
3842
|
-
/** @description The criteria for scoring the question. For 'simple' rubric type, criteria have no levels, and their points stack (total = sum of points for all criteria that apply). For 'analytical' rubric type, there should be at least one criteria, with levels. For each criteria, a matching level is picked. For 'holistic' rubric type, there should be multiple criteria, without levels (score = single selected criteria). For 'exact-values' rubric type, each criteria represents a specific value that must be matched exactly. */
|
|
3843
|
-
criteria?: {
|
|
3844
|
-
id: string;
|
|
3845
|
-
/** @description The title of the scoring criterion or level. Only applies to analytical levels and holistic criteria. */
|
|
3846
|
-
title?: string | null;
|
|
3847
|
-
/** @description The description of the scoring criterion or level. For analytical levels, this describes the specific requirements to earn the points for that level. For holistic criteria, this describes the overall requirement to earn the points for that criterion. */
|
|
3848
|
-
description?: string | null;
|
|
3849
|
-
/** @description The default amount of points to assign if this criterion or level is selected. */
|
|
3850
|
-
points?: number | null;
|
|
3851
|
-
/** @description The minimum amount of points that can be assigned if this criterion or level is selected. */
|
|
3852
|
-
minPoints?: number | null;
|
|
3853
|
-
/** @description The maximum amount of points that can be assigned if this criterion or level is selected. */
|
|
3854
|
-
maxPoints?: number | null;
|
|
3855
|
-
/** @description The levels of a analytical rubric criterion. Each level represents a different point value and description for the same criterion. */
|
|
3856
|
-
levels?: {
|
|
3857
|
-
id: string;
|
|
3858
|
-
/** @description The title of the scoring criterion or level. Only applies to analytical levels and holistic criteria. */
|
|
3859
|
-
title?: string | null;
|
|
3860
|
-
/** @description The description of the scoring criterion or level. For analytical levels, this describes the specific requirements to earn the points for that level. For holistic criteria, this describes the overall requirement to earn the points for that criterion. */
|
|
3861
|
-
description?: string | null;
|
|
3862
|
-
/** @description The default amount of points to assign if this criterion or level is selected. */
|
|
3863
|
-
points?: number | null;
|
|
3864
|
-
/** @description The minimum amount of points that can be assigned if this criterion or level is selected. */
|
|
3865
|
-
minPoints?: number | null;
|
|
3866
|
-
/** @description The maximum amount of points that can be assigned if this criterion or level is selected. */
|
|
3867
|
-
maxPoints?: number | null;
|
|
3868
|
-
}[] | null;
|
|
3869
|
-
}[] | null;
|
|
3870
|
-
/** @description Whether exact values matching should be case insensitive. Only applicable for 'exact-values' rubric type. */
|
|
3871
|
-
exactValuesCaseInsensitive?: boolean | null;
|
|
3872
|
-
/** @description Optional additional grading guidance text. */
|
|
3873
|
-
guidance?: string | null;
|
|
3874
|
-
/** @description Optional example model answer text to show to graders. */
|
|
3875
|
-
modelAnswer?: string | null;
|
|
3876
|
-
/** @description The ID of the scoring template applied, if any. */
|
|
3877
|
-
templateId?: string | null;
|
|
3878
|
-
} | null;
|
|
3879
|
-
/** @description Tags associated with the question for categorization and search */
|
|
3880
|
-
tags?: string[] | null;
|
|
3881
|
-
/** @description Optional external ID for the question, used to link to external systems */
|
|
3882
|
-
externalId?: string | null;
|
|
3883
|
-
/** @description Metadata for the question */
|
|
3884
|
-
metadata?: {
|
|
3885
|
-
[key: string]: string | number | boolean | null;
|
|
3886
|
-
} | null;
|
|
3887
|
-
/** @description Version number, incremented when question is edited */
|
|
3888
|
-
v?: number | null;
|
|
3889
|
-
/** @description ID of the question in the question bank */
|
|
3890
|
-
questionBankItemId?: string | null;
|
|
3891
|
-
/** @description Trace IDs for internal tracking of AI generation processes */
|
|
3892
|
-
traceIds?: string[] | null;
|
|
3893
|
-
} & {
|
|
3894
|
-
[key: string]: unknown;
|
|
3895
|
-
})[] | null;
|
|
3896
|
-
permissions?: {
|
|
3897
|
-
actor: string;
|
|
3898
4213
|
/** @enum {string} */
|
|
3899
4214
|
role: "owner" | "manager" | "editor" | "viewer" | "participant";
|
|
3900
|
-
|
|
4215
|
+
/** Format: date-time */
|
|
4216
|
+
createdAt: string;
|
|
4217
|
+
/** Format: date-time */
|
|
4218
|
+
updatedAt: string;
|
|
4219
|
+
createdBy: string;
|
|
4220
|
+
};
|
|
3901
4221
|
};
|
|
3902
4222
|
};
|
|
3903
|
-
|
|
3904
|
-
|
|
3905
|
-
|
|
3906
|
-
|
|
3907
|
-
|
|
3908
|
-
|
|
3909
|
-
|
|
3910
|
-
|
|
3911
|
-
|
|
3912
|
-
|
|
3913
|
-
|
|
3914
|
-
content: {
|
|
3915
|
-
"application/json": {
|
|
3916
|
-
name: string;
|
|
3917
|
-
sourceMaterialIds?: string[];
|
|
4223
|
+
/** @description No access to this resource. */
|
|
4224
|
+
403: {
|
|
4225
|
+
headers: {
|
|
4226
|
+
[name: string]: unknown;
|
|
4227
|
+
};
|
|
4228
|
+
content?: never;
|
|
4229
|
+
};
|
|
4230
|
+
/** @description The specified actor has no access to the specified resource. */
|
|
4231
|
+
404: {
|
|
4232
|
+
headers: {
|
|
4233
|
+
[name: string]: unknown;
|
|
3918
4234
|
};
|
|
4235
|
+
content?: never;
|
|
3919
4236
|
};
|
|
3920
4237
|
};
|
|
3921
|
-
responses: never;
|
|
3922
4238
|
};
|
|
3923
|
-
"
|
|
4239
|
+
"permissions.delete": {
|
|
3924
4240
|
parameters: {
|
|
3925
4241
|
query?: never;
|
|
3926
4242
|
header?: never;
|
|
3927
4243
|
path: {
|
|
3928
|
-
|
|
4244
|
+
resource: string;
|
|
4245
|
+
actor: (string) | string;
|
|
3929
4246
|
};
|
|
3930
4247
|
cookie?: never;
|
|
3931
4248
|
};
|
|
3932
4249
|
requestBody?: never;
|
|
3933
|
-
responses:
|
|
4250
|
+
responses: {
|
|
4251
|
+
/** @description Permission successfully removed. */
|
|
4252
|
+
200: {
|
|
4253
|
+
headers: {
|
|
4254
|
+
[name: string]: unknown;
|
|
4255
|
+
};
|
|
4256
|
+
content?: never;
|
|
4257
|
+
};
|
|
4258
|
+
/** @description No access to manage this resource. */
|
|
4259
|
+
403: {
|
|
4260
|
+
headers: {
|
|
4261
|
+
[name: string]: unknown;
|
|
4262
|
+
};
|
|
4263
|
+
content?: never;
|
|
4264
|
+
};
|
|
4265
|
+
};
|
|
3934
4266
|
};
|
|
3935
|
-
"
|
|
4267
|
+
"studentLevels.list": {
|
|
3936
4268
|
parameters: {
|
|
3937
4269
|
query?: never;
|
|
3938
4270
|
header?: never;
|
|
3939
|
-
path
|
|
3940
|
-
id: string;
|
|
3941
|
-
};
|
|
4271
|
+
path?: never;
|
|
3942
4272
|
cookie?: never;
|
|
3943
4273
|
};
|
|
3944
4274
|
requestBody?: never;
|
|
3945
4275
|
responses: never;
|
|
3946
4276
|
};
|
|
3947
|
-
"
|
|
4277
|
+
"users.list": {
|
|
3948
4278
|
parameters: {
|
|
3949
4279
|
query?: never;
|
|
3950
4280
|
header?: never;
|
|
3951
|
-
path
|
|
3952
|
-
id: string;
|
|
3953
|
-
};
|
|
4281
|
+
path?: never;
|
|
3954
4282
|
cookie?: never;
|
|
3955
4283
|
};
|
|
3956
4284
|
requestBody?: never;
|
|
3957
4285
|
responses: never;
|
|
3958
4286
|
};
|
|
3959
|
-
"
|
|
4287
|
+
"users.create": {
|
|
3960
4288
|
parameters: {
|
|
3961
4289
|
query?: never;
|
|
3962
4290
|
header?: never;
|
|
3963
|
-
path
|
|
3964
|
-
id: string;
|
|
3965
|
-
};
|
|
4291
|
+
path?: never;
|
|
3966
4292
|
cookie?: never;
|
|
3967
4293
|
};
|
|
3968
4294
|
requestBody?: {
|
|
3969
4295
|
content: {
|
|
3970
4296
|
"application/json": {
|
|
3971
|
-
|
|
3972
|
-
|
|
4297
|
+
/** Format: email */
|
|
4298
|
+
email: string;
|
|
4299
|
+
name?: string;
|
|
4300
|
+
/**
|
|
4301
|
+
* @default teacher
|
|
4302
|
+
* @enum {string}
|
|
4303
|
+
*/
|
|
4304
|
+
role?: "owner" | "admin" | "teacher" | "student" | "member";
|
|
4305
|
+
/**
|
|
4306
|
+
* @description Whether to send an invitation email. Defaults to false.
|
|
4307
|
+
* @default false
|
|
4308
|
+
*/
|
|
4309
|
+
sendInvite?: boolean;
|
|
3973
4310
|
};
|
|
3974
4311
|
};
|
|
3975
4312
|
};
|
|
3976
4313
|
responses: never;
|
|
3977
4314
|
};
|
|
3978
|
-
"
|
|
3979
|
-
parameters: {
|
|
3980
|
-
query?: never;
|
|
3981
|
-
header?: never;
|
|
3982
|
-
path: {
|
|
3983
|
-
id: string;
|
|
3984
|
-
};
|
|
3985
|
-
cookie?: never;
|
|
3986
|
-
};
|
|
3987
|
-
requestBody?: never;
|
|
3988
|
-
responses: never;
|
|
3989
|
-
};
|
|
3990
|
-
"exams.startGeneration": {
|
|
3991
|
-
parameters: {
|
|
3992
|
-
query?: never;
|
|
3993
|
-
header?: never;
|
|
3994
|
-
path: {
|
|
3995
|
-
id: string;
|
|
3996
|
-
};
|
|
3997
|
-
cookie?: never;
|
|
3998
|
-
};
|
|
3999
|
-
requestBody?: never;
|
|
4000
|
-
responses: never;
|
|
4001
|
-
};
|
|
4002
|
-
"exams.cancelGeneration": {
|
|
4315
|
+
"users.delete": {
|
|
4003
4316
|
parameters: {
|
|
4004
4317
|
query?: never;
|
|
4005
4318
|
header?: never;
|
|
@@ -4011,7 +4324,7 @@ interface operations {
|
|
|
4011
4324
|
requestBody?: never;
|
|
4012
4325
|
responses: never;
|
|
4013
4326
|
};
|
|
4014
|
-
"
|
|
4327
|
+
"users.update": {
|
|
4015
4328
|
parameters: {
|
|
4016
4329
|
query?: never;
|
|
4017
4330
|
header?: never;
|
|
@@ -4434,6 +4747,18 @@ interface operations {
|
|
|
4434
4747
|
} & {
|
|
4435
4748
|
[key: string]: unknown;
|
|
4436
4749
|
};
|
|
4750
|
+
externalId?: string;
|
|
4751
|
+
parentSourceMaterialId?: string;
|
|
4752
|
+
summary?: string;
|
|
4753
|
+
factsCount?: number;
|
|
4754
|
+
/** @enum {string} */
|
|
4755
|
+
processingStatus?: "pending" | "converting" | "summarizing" | "extracting_topics" | "extracting_facts" | "completed" | "failed";
|
|
4756
|
+
numberOfPages?: number;
|
|
4757
|
+
chapterMarkers?: {
|
|
4758
|
+
title: string;
|
|
4759
|
+
startPage: number;
|
|
4760
|
+
endPage: number;
|
|
4761
|
+
}[];
|
|
4437
4762
|
convertedSourceV2?: {
|
|
4438
4763
|
/** Format: uri */
|
|
4439
4764
|
url: string;
|
|
@@ -4456,20 +4781,8 @@ interface operations {
|
|
|
4456
4781
|
} & {
|
|
4457
4782
|
[key: string]: unknown;
|
|
4458
4783
|
};
|
|
4459
|
-
externalId?: string;
|
|
4460
|
-
parentSourceMaterialId?: string;
|
|
4461
|
-
cacheName?: string;
|
|
4462
|
-
summary?: string;
|
|
4463
|
-
factsCount?: number;
|
|
4464
|
-
/** @enum {string} */
|
|
4465
|
-
processingStatus?: "pending" | "converting" | "summarizing" | "extracting_topics" | "extracting_facts" | "completed" | "failed";
|
|
4466
|
-
numberOfPages?: number;
|
|
4467
|
-
chapterMarkers?: {
|
|
4468
|
-
title: string;
|
|
4469
|
-
startPage: number;
|
|
4470
|
-
endPage: number;
|
|
4471
|
-
}[];
|
|
4472
4784
|
topics?: unknown;
|
|
4785
|
+
cacheName?: string;
|
|
4473
4786
|
}[];
|
|
4474
4787
|
};
|
|
4475
4788
|
};
|
|
@@ -4528,6 +4841,18 @@ interface operations {
|
|
|
4528
4841
|
} & {
|
|
4529
4842
|
[key: string]: unknown;
|
|
4530
4843
|
};
|
|
4844
|
+
externalId?: string;
|
|
4845
|
+
parentSourceMaterialId?: string;
|
|
4846
|
+
summary?: string;
|
|
4847
|
+
factsCount?: number;
|
|
4848
|
+
/** @enum {string} */
|
|
4849
|
+
processingStatus?: "pending" | "converting" | "summarizing" | "extracting_topics" | "extracting_facts" | "completed" | "failed";
|
|
4850
|
+
numberOfPages?: number;
|
|
4851
|
+
chapterMarkers?: {
|
|
4852
|
+
title: string;
|
|
4853
|
+
startPage: number;
|
|
4854
|
+
endPage: number;
|
|
4855
|
+
}[];
|
|
4531
4856
|
convertedSourceV2?: {
|
|
4532
4857
|
/** Format: uri */
|
|
4533
4858
|
url: string;
|
|
@@ -4550,20 +4875,8 @@ interface operations {
|
|
|
4550
4875
|
} & {
|
|
4551
4876
|
[key: string]: unknown;
|
|
4552
4877
|
};
|
|
4553
|
-
externalId?: string;
|
|
4554
|
-
parentSourceMaterialId?: string;
|
|
4555
|
-
cacheName?: string;
|
|
4556
|
-
summary?: string;
|
|
4557
|
-
factsCount?: number;
|
|
4558
|
-
/** @enum {string} */
|
|
4559
|
-
processingStatus?: "pending" | "converting" | "summarizing" | "extracting_topics" | "extracting_facts" | "completed" | "failed";
|
|
4560
|
-
numberOfPages?: number;
|
|
4561
|
-
chapterMarkers?: {
|
|
4562
|
-
title: string;
|
|
4563
|
-
startPage: number;
|
|
4564
|
-
endPage: number;
|
|
4565
|
-
}[];
|
|
4566
4878
|
topics?: unknown;
|
|
4879
|
+
cacheName?: string;
|
|
4567
4880
|
};
|
|
4568
4881
|
};
|
|
4569
4882
|
};
|
|
@@ -4608,6 +4921,18 @@ interface operations {
|
|
|
4608
4921
|
} & {
|
|
4609
4922
|
[key: string]: unknown;
|
|
4610
4923
|
};
|
|
4924
|
+
externalId?: string;
|
|
4925
|
+
parentSourceMaterialId?: string;
|
|
4926
|
+
summary?: string;
|
|
4927
|
+
factsCount?: number;
|
|
4928
|
+
/** @enum {string} */
|
|
4929
|
+
processingStatus?: "pending" | "converting" | "summarizing" | "extracting_topics" | "extracting_facts" | "completed" | "failed";
|
|
4930
|
+
numberOfPages?: number;
|
|
4931
|
+
chapterMarkers?: {
|
|
4932
|
+
title: string;
|
|
4933
|
+
startPage: number;
|
|
4934
|
+
endPage: number;
|
|
4935
|
+
}[];
|
|
4611
4936
|
convertedSourceV2?: {
|
|
4612
4937
|
/** Format: uri */
|
|
4613
4938
|
url: string;
|
|
@@ -4630,20 +4955,8 @@ interface operations {
|
|
|
4630
4955
|
} & {
|
|
4631
4956
|
[key: string]: unknown;
|
|
4632
4957
|
};
|
|
4633
|
-
externalId?: string;
|
|
4634
|
-
parentSourceMaterialId?: string;
|
|
4635
|
-
cacheName?: string;
|
|
4636
|
-
summary?: string;
|
|
4637
|
-
factsCount?: number;
|
|
4638
|
-
/** @enum {string} */
|
|
4639
|
-
processingStatus?: "pending" | "converting" | "summarizing" | "extracting_topics" | "extracting_facts" | "completed" | "failed";
|
|
4640
|
-
numberOfPages?: number;
|
|
4641
|
-
chapterMarkers?: {
|
|
4642
|
-
title: string;
|
|
4643
|
-
startPage: number;
|
|
4644
|
-
endPage: number;
|
|
4645
|
-
}[];
|
|
4646
4958
|
topics?: unknown;
|
|
4959
|
+
cacheName?: string;
|
|
4647
4960
|
};
|
|
4648
4961
|
};
|
|
4649
4962
|
};
|
|
@@ -4730,6 +5043,18 @@ interface operations {
|
|
|
4730
5043
|
} & {
|
|
4731
5044
|
[key: string]: unknown;
|
|
4732
5045
|
};
|
|
5046
|
+
externalId?: string;
|
|
5047
|
+
parentSourceMaterialId?: string;
|
|
5048
|
+
summary?: string;
|
|
5049
|
+
factsCount?: number;
|
|
5050
|
+
/** @enum {string} */
|
|
5051
|
+
processingStatus?: "pending" | "converting" | "summarizing" | "extracting_topics" | "extracting_facts" | "completed" | "failed";
|
|
5052
|
+
numberOfPages?: number;
|
|
5053
|
+
chapterMarkers?: {
|
|
5054
|
+
title: string;
|
|
5055
|
+
startPage: number;
|
|
5056
|
+
endPage: number;
|
|
5057
|
+
}[];
|
|
4733
5058
|
convertedSourceV2?: {
|
|
4734
5059
|
/** Format: uri */
|
|
4735
5060
|
url: string;
|
|
@@ -4752,20 +5077,8 @@ interface operations {
|
|
|
4752
5077
|
} & {
|
|
4753
5078
|
[key: string]: unknown;
|
|
4754
5079
|
};
|
|
4755
|
-
externalId?: string;
|
|
4756
|
-
parentSourceMaterialId?: string;
|
|
4757
|
-
cacheName?: string;
|
|
4758
|
-
summary?: string;
|
|
4759
|
-
factsCount?: number;
|
|
4760
|
-
/** @enum {string} */
|
|
4761
|
-
processingStatus?: "pending" | "converting" | "summarizing" | "extracting_topics" | "extracting_facts" | "completed" | "failed";
|
|
4762
|
-
numberOfPages?: number;
|
|
4763
|
-
chapterMarkers?: {
|
|
4764
|
-
title: string;
|
|
4765
|
-
startPage: number;
|
|
4766
|
-
endPage: number;
|
|
4767
|
-
}[];
|
|
4768
5080
|
topics?: unknown;
|
|
5081
|
+
cacheName?: string;
|
|
4769
5082
|
};
|
|
4770
5083
|
};
|
|
4771
5084
|
};
|
|
@@ -5451,6 +5764,71 @@ interface operations {
|
|
|
5451
5764
|
};
|
|
5452
5765
|
responses: never;
|
|
5453
5766
|
};
|
|
5767
|
+
"prompts.list": {
|
|
5768
|
+
parameters: {
|
|
5769
|
+
query?: {
|
|
5770
|
+
/** @description Only return prompts of this type */
|
|
5771
|
+
type?: string;
|
|
5772
|
+
/** @description Language for the default prompts, falls back to the user's preference or 'en' */
|
|
5773
|
+
language?: string;
|
|
5774
|
+
};
|
|
5775
|
+
header?: never;
|
|
5776
|
+
path?: never;
|
|
5777
|
+
cookie?: never;
|
|
5778
|
+
};
|
|
5779
|
+
requestBody?: never;
|
|
5780
|
+
responses: never;
|
|
5781
|
+
};
|
|
5782
|
+
"prompts.create": {
|
|
5783
|
+
parameters: {
|
|
5784
|
+
query?: never;
|
|
5785
|
+
header?: never;
|
|
5786
|
+
path?: never;
|
|
5787
|
+
cookie?: never;
|
|
5788
|
+
};
|
|
5789
|
+
requestBody?: {
|
|
5790
|
+
content: {
|
|
5791
|
+
"application/json": {
|
|
5792
|
+
name: string;
|
|
5793
|
+
promptType: string;
|
|
5794
|
+
content: string;
|
|
5795
|
+
};
|
|
5796
|
+
};
|
|
5797
|
+
};
|
|
5798
|
+
responses: never;
|
|
5799
|
+
};
|
|
5800
|
+
"prompts.delete": {
|
|
5801
|
+
parameters: {
|
|
5802
|
+
query?: never;
|
|
5803
|
+
header?: never;
|
|
5804
|
+
path: {
|
|
5805
|
+
id: string;
|
|
5806
|
+
};
|
|
5807
|
+
cookie?: never;
|
|
5808
|
+
};
|
|
5809
|
+
requestBody?: never;
|
|
5810
|
+
responses: never;
|
|
5811
|
+
};
|
|
5812
|
+
"prompts.update": {
|
|
5813
|
+
parameters: {
|
|
5814
|
+
query?: never;
|
|
5815
|
+
header?: never;
|
|
5816
|
+
path: {
|
|
5817
|
+
id: string;
|
|
5818
|
+
};
|
|
5819
|
+
cookie?: never;
|
|
5820
|
+
};
|
|
5821
|
+
requestBody?: {
|
|
5822
|
+
content: {
|
|
5823
|
+
"application/json": {
|
|
5824
|
+
name?: string;
|
|
5825
|
+
promptType?: string;
|
|
5826
|
+
content?: string;
|
|
5827
|
+
};
|
|
5828
|
+
};
|
|
5829
|
+
};
|
|
5830
|
+
responses: never;
|
|
5831
|
+
};
|
|
5454
5832
|
"jobs.get": {
|
|
5455
5833
|
parameters: {
|
|
5456
5834
|
query?: never;
|
|
@@ -5528,38 +5906,6 @@ interface _PathOverrides {
|
|
|
5528
5906
|
"embedSessions.revoke": {
|
|
5529
5907
|
id: string;
|
|
5530
5908
|
};
|
|
5531
|
-
"attributes.update": {
|
|
5532
|
-
id: string;
|
|
5533
|
-
};
|
|
5534
|
-
"attributes.delete": {
|
|
5535
|
-
id: string;
|
|
5536
|
-
};
|
|
5537
|
-
"taxonomies.update": {
|
|
5538
|
-
id: string;
|
|
5539
|
-
};
|
|
5540
|
-
"taxonomies.delete": {
|
|
5541
|
-
id: string;
|
|
5542
|
-
};
|
|
5543
|
-
"permissions.list": {
|
|
5544
|
-
resource: string;
|
|
5545
|
-
};
|
|
5546
|
-
"permissions.assign": {
|
|
5547
|
-
resource: string;
|
|
5548
|
-
};
|
|
5549
|
-
"permissions.getActorRole": {
|
|
5550
|
-
actor: string;
|
|
5551
|
-
resource: string;
|
|
5552
|
-
};
|
|
5553
|
-
"permissions.delete": {
|
|
5554
|
-
resource: string;
|
|
5555
|
-
actor: string;
|
|
5556
|
-
};
|
|
5557
|
-
"users.update": {
|
|
5558
|
-
id: string;
|
|
5559
|
-
};
|
|
5560
|
-
"users.delete": {
|
|
5561
|
-
id: string;
|
|
5562
|
-
};
|
|
5563
5909
|
"exams.sessions.list": {
|
|
5564
5910
|
examId: string;
|
|
5565
5911
|
};
|
|
@@ -5606,6 +5952,24 @@ interface _PathOverrides {
|
|
|
5606
5952
|
sessionId: string;
|
|
5607
5953
|
questionId: string;
|
|
5608
5954
|
};
|
|
5955
|
+
"exams.sessions.comments.list": {
|
|
5956
|
+
examId: string;
|
|
5957
|
+
sessionId: string;
|
|
5958
|
+
};
|
|
5959
|
+
"exams.sessions.comments.create": {
|
|
5960
|
+
examId: string;
|
|
5961
|
+
sessionId: string;
|
|
5962
|
+
};
|
|
5963
|
+
"exams.sessions.comments.update": {
|
|
5964
|
+
examId: string;
|
|
5965
|
+
sessionId: string;
|
|
5966
|
+
commentId: string;
|
|
5967
|
+
};
|
|
5968
|
+
"exams.sessions.comments.delete": {
|
|
5969
|
+
examId: string;
|
|
5970
|
+
sessionId: string;
|
|
5971
|
+
commentId: string;
|
|
5972
|
+
};
|
|
5609
5973
|
"exams.questions.import": {
|
|
5610
5974
|
examId: string;
|
|
5611
5975
|
};
|
|
@@ -5650,6 +6014,38 @@ interface _PathOverrides {
|
|
|
5650
6014
|
"exams.getContextSuggestions": {
|
|
5651
6015
|
examId: string;
|
|
5652
6016
|
};
|
|
6017
|
+
"attributes.update": {
|
|
6018
|
+
id: string;
|
|
6019
|
+
};
|
|
6020
|
+
"attributes.delete": {
|
|
6021
|
+
id: string;
|
|
6022
|
+
};
|
|
6023
|
+
"taxonomies.update": {
|
|
6024
|
+
id: string;
|
|
6025
|
+
};
|
|
6026
|
+
"taxonomies.delete": {
|
|
6027
|
+
id: string;
|
|
6028
|
+
};
|
|
6029
|
+
"permissions.list": {
|
|
6030
|
+
resource: string;
|
|
6031
|
+
};
|
|
6032
|
+
"permissions.assign": {
|
|
6033
|
+
resource: string;
|
|
6034
|
+
};
|
|
6035
|
+
"permissions.getActorRole": {
|
|
6036
|
+
actor: string;
|
|
6037
|
+
resource: string;
|
|
6038
|
+
};
|
|
6039
|
+
"permissions.delete": {
|
|
6040
|
+
resource: string;
|
|
6041
|
+
actor: string;
|
|
6042
|
+
};
|
|
6043
|
+
"users.update": {
|
|
6044
|
+
id: string;
|
|
6045
|
+
};
|
|
6046
|
+
"users.delete": {
|
|
6047
|
+
id: string;
|
|
6048
|
+
};
|
|
5653
6049
|
"practiceSpaces.get": {
|
|
5654
6050
|
id: string;
|
|
5655
6051
|
};
|
|
@@ -5749,6 +6145,12 @@ interface _PathOverrides {
|
|
|
5749
6145
|
"deleteRubrics:id": {
|
|
5750
6146
|
id: string;
|
|
5751
6147
|
};
|
|
6148
|
+
"prompts.update": {
|
|
6149
|
+
id: string;
|
|
6150
|
+
};
|
|
6151
|
+
"prompts.delete": {
|
|
6152
|
+
id: string;
|
|
6153
|
+
};
|
|
5752
6154
|
"jobs.get": {
|
|
5753
6155
|
id: string;
|
|
5754
6156
|
};
|
|
@@ -6017,553 +6419,610 @@ declare class EmbedSessions {
|
|
|
6017
6419
|
revoke(id: string, options?: ExamplaryRequestOptions): Promise<Response<"embedSessions.revoke">>;
|
|
6018
6420
|
revoke(args: Args<"embedSessions.revoke">, options?: ExamplaryRequestOptions): Promise<Response<"embedSessions.revoke">>;
|
|
6019
6421
|
}
|
|
6020
|
-
declare class
|
|
6422
|
+
declare class ExamsSessionsComments {
|
|
6021
6423
|
private readonly ctx;
|
|
6022
6424
|
constructor(ctx: ClientContext);
|
|
6023
6425
|
/**
|
|
6024
|
-
*
|
|
6426
|
+
* List session comments
|
|
6025
6427
|
*
|
|
6026
|
-
* Get
|
|
6428
|
+
* Get a list of all comments left on a student's assessment session.
|
|
6027
6429
|
*
|
|
6028
|
-
* API endpoint: `GET /
|
|
6430
|
+
* API endpoint: `GET /exams/{examId}/sessions/{sessionId}/comments`
|
|
6029
6431
|
*/
|
|
6030
|
-
|
|
6432
|
+
list(args: Args<"exams.sessions.comments.list">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.comments.list">>;
|
|
6031
6433
|
/**
|
|
6032
|
-
*
|
|
6434
|
+
* Create session comment
|
|
6033
6435
|
*
|
|
6034
|
-
*
|
|
6436
|
+
* Add a new comment to a question in a student's assessment session.
|
|
6035
6437
|
*
|
|
6036
|
-
* API endpoint: `
|
|
6438
|
+
* API endpoint: `POST /exams/{examId}/sessions/{sessionId}/comments`
|
|
6037
6439
|
*/
|
|
6038
|
-
|
|
6039
|
-
}
|
|
6040
|
-
declare class Media {
|
|
6041
|
-
private readonly ctx;
|
|
6042
|
-
constructor(ctx: ClientContext);
|
|
6440
|
+
create(args: Args<"exams.sessions.comments.create">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.comments.create">>;
|
|
6043
6441
|
/**
|
|
6044
|
-
*
|
|
6442
|
+
* Update session comment
|
|
6045
6443
|
*
|
|
6046
|
-
*
|
|
6444
|
+
* Edit the body of an existing session comment.
|
|
6047
6445
|
*
|
|
6048
|
-
* API endpoint: `
|
|
6446
|
+
* API endpoint: `PATCH /exams/{examId}/sessions/{sessionId}/comments/{commentId}`
|
|
6049
6447
|
*/
|
|
6050
|
-
|
|
6448
|
+
update(args: Args<"exams.sessions.comments.update">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.comments.update">>;
|
|
6449
|
+
/**
|
|
6450
|
+
* Delete session comment
|
|
6451
|
+
*
|
|
6452
|
+
* Remove a comment from a session.
|
|
6453
|
+
*
|
|
6454
|
+
* API endpoint: `DELETE /exams/{examId}/sessions/{sessionId}/comments/{commentId}`
|
|
6455
|
+
*/
|
|
6456
|
+
delete(args: Args<"exams.sessions.comments.delete">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.comments.delete">>;
|
|
6051
6457
|
}
|
|
6052
|
-
declare class
|
|
6458
|
+
declare class ExamsSessions {
|
|
6053
6459
|
private readonly ctx;
|
|
6460
|
+
readonly comments: ExamsSessionsComments;
|
|
6054
6461
|
constructor(ctx: ClientContext);
|
|
6055
6462
|
/**
|
|
6056
|
-
*
|
|
6463
|
+
* List exam sessions
|
|
6057
6464
|
*
|
|
6058
|
-
*
|
|
6465
|
+
* Get a list of all student sessions for an exam, representing a set of answers from a student.
|
|
6466
|
+
*
|
|
6467
|
+
* API endpoint: `GET /exams/{examId}/sessions`
|
|
6059
6468
|
*/
|
|
6060
|
-
|
|
6469
|
+
list(examId: string, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.list">>;
|
|
6470
|
+
list(args: Args<"exams.sessions.list">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.list">>;
|
|
6061
6471
|
/**
|
|
6062
|
-
*
|
|
6472
|
+
* Create session
|
|
6063
6473
|
*
|
|
6064
|
-
*
|
|
6474
|
+
* Manually create a session, possibly from uploaded data.
|
|
6475
|
+
*
|
|
6476
|
+
* API endpoint: `POST /exams/{examId}/sessions`
|
|
6065
6477
|
*/
|
|
6066
|
-
|
|
6067
|
-
}
|
|
6068
|
-
declare class Org {
|
|
6069
|
-
private readonly ctx;
|
|
6070
|
-
readonly customDomain: OrgCustomDomain;
|
|
6071
|
-
constructor(ctx: ClientContext);
|
|
6478
|
+
import(args: Args<"exams.sessions.import">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.import">>;
|
|
6072
6479
|
/**
|
|
6073
|
-
* Get
|
|
6480
|
+
* Get answers from scan
|
|
6074
6481
|
*
|
|
6075
|
-
*
|
|
6482
|
+
* Scan student answers from a document.
|
|
6483
|
+
*
|
|
6484
|
+
* API endpoint: `POST /exams/{examId}/sessions/scan`
|
|
6076
6485
|
*/
|
|
6077
|
-
|
|
6486
|
+
scan(examId: string, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.scan">>;
|
|
6487
|
+
scan(args: Args<"exams.sessions.scan">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.scan">>;
|
|
6078
6488
|
/**
|
|
6079
|
-
*
|
|
6489
|
+
* Scan document for student answers
|
|
6080
6490
|
*
|
|
6081
|
-
*
|
|
6491
|
+
* Start a background task to extract student answers from an uploaded PDF document.
|
|
6492
|
+
*
|
|
6493
|
+
* API endpoint: `POST /exams/{examId}/sessions/scan-document`
|
|
6082
6494
|
*/
|
|
6083
|
-
|
|
6495
|
+
scanDocument(args: Args<"exams.sessions.scanDocument">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.scanDocument">>;
|
|
6084
6496
|
/**
|
|
6085
|
-
*
|
|
6497
|
+
* Get exam session
|
|
6086
6498
|
*
|
|
6087
|
-
*
|
|
6499
|
+
* Get a single exam session by its ID, representing a set of answers from a student.
|
|
6500
|
+
*
|
|
6501
|
+
* API endpoint: `GET /exams/{examId}/sessions/{sessionId}`
|
|
6088
6502
|
*/
|
|
6089
|
-
|
|
6090
|
-
}
|
|
6091
|
-
declare class Orgs {
|
|
6092
|
-
private readonly ctx;
|
|
6093
|
-
constructor(ctx: ClientContext);
|
|
6503
|
+
get(args: Args<"exams.sessions.get">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.get">>;
|
|
6094
6504
|
/**
|
|
6095
|
-
*
|
|
6505
|
+
* Delete exam session
|
|
6096
6506
|
*
|
|
6097
|
-
*
|
|
6507
|
+
* Remove an exam session.
|
|
6508
|
+
*
|
|
6509
|
+
* API endpoint: `DELETE /exams/{examId}/sessions/{sessionId}`
|
|
6098
6510
|
*/
|
|
6099
|
-
|
|
6511
|
+
delete(args: Args<"exams.sessions.delete">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.delete">>;
|
|
6100
6512
|
/**
|
|
6101
|
-
*
|
|
6513
|
+
* Provide feedback
|
|
6102
6514
|
*
|
|
6103
|
-
*
|
|
6515
|
+
* Set teacher feedback and/or a grade for a specific question in an exam session.
|
|
6104
6516
|
*
|
|
6105
|
-
* API endpoint: `POST /
|
|
6517
|
+
* API endpoint: `POST /exams/{examId}/sessions/{sessionId}/feedback`
|
|
6106
6518
|
*/
|
|
6107
|
-
|
|
6108
|
-
}
|
|
6109
|
-
declare class ApiKeys {
|
|
6110
|
-
private readonly ctx;
|
|
6111
|
-
constructor(ctx: ClientContext);
|
|
6519
|
+
saveFeedback(args: Args<"exams.sessions.saveFeedback">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.saveFeedback">>;
|
|
6112
6520
|
/**
|
|
6113
|
-
*
|
|
6521
|
+
* Provide overall feedback
|
|
6114
6522
|
*
|
|
6115
|
-
*
|
|
6523
|
+
* Set teacher feedback for the test as a whole in an exam session.
|
|
6116
6524
|
*
|
|
6117
|
-
* API endpoint: `
|
|
6525
|
+
* API endpoint: `POST /exams/{examId}/sessions/{sessionId}/overall-feedback`
|
|
6118
6526
|
*/
|
|
6119
|
-
|
|
6527
|
+
saveOverallFeedback(args: Args<"exams.sessions.saveOverallFeedback">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.saveOverallFeedback">>;
|
|
6120
6528
|
/**
|
|
6121
|
-
*
|
|
6529
|
+
* Generate overall feedback
|
|
6122
6530
|
*
|
|
6123
|
-
*
|
|
6531
|
+
* Generate feedback for the test as a whole in an exam session.
|
|
6124
6532
|
*
|
|
6125
|
-
* API endpoint: `POST /
|
|
6533
|
+
* API endpoint: `POST /exams/{examId}/sessions/{sessionId}/generate-overall-feedback`
|
|
6126
6534
|
*/
|
|
6127
|
-
|
|
6128
|
-
}
|
|
6129
|
-
declare class Attributes {
|
|
6130
|
-
private readonly ctx;
|
|
6131
|
-
constructor(ctx: ClientContext);
|
|
6535
|
+
generateOverallFeedback(args: Args<"exams.sessions.generateOverallFeedback">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.generateOverallFeedback">>;
|
|
6132
6536
|
/**
|
|
6133
|
-
*
|
|
6537
|
+
* Accept AI grading suggestions
|
|
6134
6538
|
*
|
|
6135
|
-
*
|
|
6539
|
+
* Accept all AI-generated grading suggestions for the exam session.
|
|
6136
6540
|
*
|
|
6137
|
-
* API endpoint: `
|
|
6541
|
+
* API endpoint: `POST /exams/{examId}/sessions/{sessionId}/suggestions/accept-all`
|
|
6138
6542
|
*/
|
|
6139
|
-
|
|
6543
|
+
acceptAllSuggestions(args: Args<"exams.sessions.acceptAllSuggestions">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.acceptAllSuggestions">>;
|
|
6140
6544
|
/**
|
|
6141
|
-
*
|
|
6545
|
+
* Accept single AI grading suggestion
|
|
6546
|
+
*
|
|
6547
|
+
* Accept a single AI-generated grading suggestion for the exam session.
|
|
6548
|
+
*
|
|
6549
|
+
* API endpoint: `POST /exams/{examId}/sessions/{sessionId}/suggestions/{questionId}/accept`
|
|
6550
|
+
*/
|
|
6551
|
+
acceptSuggestion(args: Args<"exams.sessions.acceptSuggestion">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.acceptSuggestion">>;
|
|
6552
|
+
/**
|
|
6553
|
+
* Edit answer
|
|
6554
|
+
*
|
|
6555
|
+
* Edit a single answer in an exam session.
|
|
6556
|
+
*
|
|
6557
|
+
* API endpoint: `PATCH /exams/{examId}/sessions/{sessionId}/answers/{questionId}`
|
|
6558
|
+
*/
|
|
6559
|
+
editAnswer(args: Args<"exams.sessions.editAnswer">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.editAnswer">>;
|
|
6560
|
+
}
|
|
6561
|
+
declare class ExamsQuestions {
|
|
6562
|
+
private readonly ctx;
|
|
6563
|
+
constructor(ctx: ClientContext);
|
|
6564
|
+
/**
|
|
6565
|
+
* Import questions
|
|
6142
6566
|
*
|
|
6143
|
-
*
|
|
6567
|
+
* Import questions into an exam from a file. Support Word, PDF, Moodle quiz XML and plain text files.
|
|
6144
6568
|
*
|
|
6145
|
-
* API endpoint: `POST /
|
|
6569
|
+
* API endpoint: `POST /exams/{examId}/questions/import`
|
|
6146
6570
|
*/
|
|
6147
|
-
|
|
6571
|
+
import(args: Args<"exams.questions.import">, options?: ExamplaryRequestOptions): Promise<Response<"exams.questions.import">>;
|
|
6148
6572
|
/**
|
|
6149
|
-
*
|
|
6573
|
+
* Generate question
|
|
6150
6574
|
*
|
|
6151
|
-
*
|
|
6575
|
+
* Generate a new question for the exam using an AI prompt.
|
|
6152
6576
|
*
|
|
6153
|
-
* API endpoint: `POST /
|
|
6577
|
+
* API endpoint: `POST /exams/{examId}/questions/generate`
|
|
6154
6578
|
*/
|
|
6155
|
-
|
|
6579
|
+
generate(args: Args<"exams.questions.generate">, options?: ExamplaryRequestOptions): Promise<Response<"exams.questions.generate">>;
|
|
6156
6580
|
/**
|
|
6157
|
-
*
|
|
6581
|
+
* Get question
|
|
6158
6582
|
*
|
|
6159
|
-
*
|
|
6583
|
+
* Retrieve a question by its ID.
|
|
6160
6584
|
*
|
|
6161
|
-
* API endpoint: `
|
|
6585
|
+
* API endpoint: `GET /exams/{examId}/questions/{questionId}`
|
|
6162
6586
|
*/
|
|
6163
|
-
|
|
6587
|
+
get(args: Args<"exams.questions.get">, options?: ExamplaryRequestOptions): Promise<Response<"exams.questions.get">>;
|
|
6164
6588
|
/**
|
|
6165
|
-
*
|
|
6589
|
+
* Regenerate question
|
|
6166
6590
|
*
|
|
6167
|
-
*
|
|
6591
|
+
* Update a question using an AI prompt.
|
|
6168
6592
|
*
|
|
6169
|
-
* API endpoint: `
|
|
6593
|
+
* API endpoint: `POST /exams/{examId}/questions/{questionId}/generate`
|
|
6170
6594
|
*/
|
|
6171
|
-
|
|
6172
|
-
delete(args: Args<"attributes.delete">, options?: ExamplaryRequestOptions): Promise<Response<"attributes.delete">>;
|
|
6595
|
+
regenerate(args: Args<"exams.questions.regenerate">, options?: ExamplaryRequestOptions): Promise<Response<"exams.questions.regenerate">>;
|
|
6173
6596
|
}
|
|
6174
|
-
declare class
|
|
6597
|
+
declare class ExamsExport {
|
|
6175
6598
|
private readonly ctx;
|
|
6176
6599
|
constructor(ctx: ClientContext);
|
|
6177
6600
|
/**
|
|
6178
|
-
*
|
|
6179
|
-
*
|
|
6180
|
-
* Get a list available taxonomies, including defaults and taxonomies created in the current workspace.
|
|
6181
|
-
*
|
|
6182
|
-
* API endpoint: `GET /taxonomies`
|
|
6183
|
-
*/
|
|
6184
|
-
list(args?: Args<"taxonomies.list">, options?: ExamplaryRequestOptions): Promise<Response<"taxonomies.list">>;
|
|
6185
|
-
/**
|
|
6186
|
-
* Create taxonomy
|
|
6601
|
+
* Export QTI 3 package
|
|
6187
6602
|
*
|
|
6188
|
-
*
|
|
6603
|
+
* Export an exam as a QTI 3 ZIP package.
|
|
6189
6604
|
*
|
|
6190
|
-
* API endpoint: `POST /
|
|
6605
|
+
* API endpoint: `POST /exams/{examId}/export/qti3-zip`
|
|
6191
6606
|
*/
|
|
6192
|
-
|
|
6607
|
+
qti3Zip(examId: string, options?: ExamplaryRequestOptions): Promise<Response<"exams.export.qti3Zip">>;
|
|
6608
|
+
qti3Zip(args: Args<"exams.export.qti3Zip">, options?: ExamplaryRequestOptions): Promise<Response<"exams.export.qti3Zip">>;
|
|
6193
6609
|
/**
|
|
6194
|
-
*
|
|
6610
|
+
* Export QTI 2.1 package
|
|
6195
6611
|
*
|
|
6196
|
-
*
|
|
6612
|
+
* Export an exam as a QTI 2.1 ZIP package.
|
|
6197
6613
|
*
|
|
6198
|
-
* API endpoint: `POST /
|
|
6614
|
+
* API endpoint: `POST /exams/{examId}/export/qti21-zip`
|
|
6199
6615
|
*/
|
|
6200
|
-
|
|
6616
|
+
qti21Zip(examId: string, options?: ExamplaryRequestOptions): Promise<Response<"exams.export.qti21Zip">>;
|
|
6617
|
+
qti21Zip(args: Args<"exams.export.qti21Zip">, options?: ExamplaryRequestOptions): Promise<Response<"exams.export.qti21Zip">>;
|
|
6618
|
+
}
|
|
6619
|
+
declare class Exams {
|
|
6620
|
+
private readonly ctx;
|
|
6621
|
+
readonly sessions: ExamsSessions;
|
|
6622
|
+
readonly questions: ExamsQuestions;
|
|
6623
|
+
readonly export: ExamsExport;
|
|
6624
|
+
constructor(ctx: ClientContext);
|
|
6201
6625
|
/**
|
|
6202
|
-
*
|
|
6626
|
+
* List exams
|
|
6203
6627
|
*
|
|
6204
|
-
*
|
|
6628
|
+
* Get a list of all exams within your workspace.
|
|
6205
6629
|
*
|
|
6206
|
-
* API endpoint: `
|
|
6630
|
+
* API endpoint: `GET /exams`
|
|
6207
6631
|
*/
|
|
6208
|
-
|
|
6209
|
-
delete(args: Args<"taxonomies.delete">, options?: ExamplaryRequestOptions): Promise<Response<"taxonomies.delete">>;
|
|
6210
|
-
}
|
|
6211
|
-
declare class Permissions {
|
|
6212
|
-
private readonly ctx;
|
|
6213
|
-
constructor(ctx: ClientContext);
|
|
6632
|
+
list(args?: Args<"exams.list">, options?: ExamplaryRequestOptions): Promise<Response<"exams.list">>;
|
|
6214
6633
|
/**
|
|
6215
|
-
*
|
|
6634
|
+
* Create exam
|
|
6216
6635
|
*
|
|
6217
|
-
*
|
|
6636
|
+
* Create a new exam within your workspace.
|
|
6218
6637
|
*
|
|
6219
|
-
* API endpoint: `
|
|
6638
|
+
* API endpoint: `POST /exams`
|
|
6220
6639
|
*/
|
|
6221
|
-
|
|
6640
|
+
create(args?: Args<"exams.create">, options?: ExamplaryRequestOptions): Promise<Response<"exams.create">>;
|
|
6222
6641
|
/**
|
|
6223
|
-
*
|
|
6642
|
+
* Import exam
|
|
6224
6643
|
*
|
|
6225
|
-
*
|
|
6644
|
+
* Create an exam by importing one or more source materials (e.g. an existing exam).
|
|
6226
6645
|
*
|
|
6227
|
-
* API endpoint: `
|
|
6646
|
+
* API endpoint: `POST /exams/import`
|
|
6228
6647
|
*/
|
|
6229
|
-
|
|
6230
|
-
list(args: Args<"permissions.list">, options?: ExamplaryRequestOptions): Promise<Response<"permissions.list">>;
|
|
6648
|
+
import(args?: Args<"exams.import">, options?: ExamplaryRequestOptions): Promise<Response<"exams.import">>;
|
|
6231
6649
|
/**
|
|
6232
|
-
*
|
|
6650
|
+
* Get exam
|
|
6233
6651
|
*
|
|
6234
|
-
*
|
|
6652
|
+
* Get a single exam by its ID.
|
|
6235
6653
|
*
|
|
6236
|
-
* API endpoint: `
|
|
6654
|
+
* API endpoint: `GET /exams/{id}`
|
|
6237
6655
|
*/
|
|
6238
|
-
|
|
6656
|
+
get(id: string, options?: ExamplaryRequestOptions): Promise<Response<"exams.get">>;
|
|
6657
|
+
get(args: Args<"exams.get">, options?: ExamplaryRequestOptions): Promise<Response<"exams.get">>;
|
|
6239
6658
|
/**
|
|
6240
|
-
*
|
|
6659
|
+
* Update exam
|
|
6241
6660
|
*
|
|
6242
|
-
*
|
|
6661
|
+
* Update an existing exam.
|
|
6243
6662
|
*
|
|
6244
|
-
* API endpoint: `
|
|
6663
|
+
* API endpoint: `POST /exams/{id}`
|
|
6245
6664
|
*/
|
|
6246
|
-
|
|
6665
|
+
update(id: string, options?: ExamplaryRequestOptions): Promise<Response<"exams.update">>;
|
|
6666
|
+
update(args: Args<"exams.update">, options?: ExamplaryRequestOptions): Promise<Response<"exams.update">>;
|
|
6247
6667
|
/**
|
|
6248
|
-
*
|
|
6668
|
+
* Delete exam
|
|
6249
6669
|
*
|
|
6250
|
-
*
|
|
6670
|
+
* Delete the exam.
|
|
6251
6671
|
*
|
|
6252
|
-
* API endpoint: `DELETE /
|
|
6672
|
+
* API endpoint: `DELETE /exams/{id}`
|
|
6253
6673
|
*/
|
|
6254
|
-
delete(
|
|
6255
|
-
|
|
6256
|
-
declare class StudentLevels {
|
|
6257
|
-
private readonly ctx;
|
|
6258
|
-
constructor(ctx: ClientContext);
|
|
6674
|
+
delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<"exams.delete">>;
|
|
6675
|
+
delete(args: Args<"exams.delete">, options?: ExamplaryRequestOptions): Promise<Response<"exams.delete">>;
|
|
6259
6676
|
/**
|
|
6260
|
-
*
|
|
6677
|
+
* Duplicate exam
|
|
6261
6678
|
*
|
|
6262
|
-
*
|
|
6679
|
+
* Duplicate the exam's questions and settings to a new exam.
|
|
6263
6680
|
*
|
|
6264
|
-
* API endpoint: `
|
|
6681
|
+
* API endpoint: `POST /exams/{examId}/duplicate`
|
|
6265
6682
|
*/
|
|
6266
|
-
|
|
6267
|
-
}
|
|
6268
|
-
declare class Users {
|
|
6269
|
-
private readonly ctx;
|
|
6270
|
-
constructor(ctx: ClientContext);
|
|
6683
|
+
duplicate(args: Args<"exams.duplicate">, options?: ExamplaryRequestOptions): Promise<Response<"exams.duplicate">>;
|
|
6271
6684
|
/**
|
|
6272
|
-
*
|
|
6685
|
+
* Print exam
|
|
6273
6686
|
*
|
|
6274
|
-
*
|
|
6687
|
+
* Export an exam to a PDF file or Word document.
|
|
6275
6688
|
*
|
|
6276
|
-
* API endpoint: `
|
|
6689
|
+
* API endpoint: `POST /exams/{examId}/print`
|
|
6277
6690
|
*/
|
|
6278
|
-
|
|
6691
|
+
print(examId: string, options?: ExamplaryRequestOptions): Promise<Response<"exams.print">>;
|
|
6692
|
+
print(args: Args<"exams.print">, options?: ExamplaryRequestOptions): Promise<Response<"exams.print">>;
|
|
6279
6693
|
/**
|
|
6280
|
-
*
|
|
6694
|
+
* Generate exam
|
|
6281
6695
|
*
|
|
6282
|
-
*
|
|
6696
|
+
* Initiate a job to generate new questions for the exam using AI, based on the source materials and metadata specified.
|
|
6283
6697
|
*
|
|
6284
|
-
* API endpoint: `POST /
|
|
6698
|
+
* API endpoint: `POST /exams/{examId}/generate`
|
|
6285
6699
|
*/
|
|
6286
|
-
|
|
6700
|
+
startGeneration(examId: string, options?: ExamplaryRequestOptions): Promise<Response<"exams.startGeneration">>;
|
|
6701
|
+
startGeneration(args: Args<"exams.startGeneration">, options?: ExamplaryRequestOptions): Promise<Response<"exams.startGeneration">>;
|
|
6287
6702
|
/**
|
|
6288
|
-
*
|
|
6703
|
+
* Cancel exam generation
|
|
6289
6704
|
*
|
|
6290
|
-
*
|
|
6705
|
+
* Cancel an ongoing job to generate new questions for the exam using AI.
|
|
6291
6706
|
*
|
|
6292
|
-
* API endpoint: `
|
|
6707
|
+
* API endpoint: `POST /exams/{examId}/generate/cancel`
|
|
6293
6708
|
*/
|
|
6294
|
-
|
|
6295
|
-
|
|
6709
|
+
cancelGeneration(examId: string, options?: ExamplaryRequestOptions): Promise<Response<"exams.cancelGeneration">>;
|
|
6710
|
+
cancelGeneration(args: Args<"exams.cancelGeneration">, options?: ExamplaryRequestOptions): Promise<Response<"exams.cancelGeneration">>;
|
|
6296
6711
|
/**
|
|
6297
|
-
*
|
|
6712
|
+
* Get exam context suggestions
|
|
6298
6713
|
*
|
|
6299
|
-
*
|
|
6714
|
+
* Get AI-generated suggestions for context/instructions to include in the exam generation prompt, based on the source materials linked to the exam.
|
|
6300
6715
|
*
|
|
6301
|
-
* API endpoint: `
|
|
6716
|
+
* API endpoint: `GET /exams/{examId}/context-suggestions`
|
|
6302
6717
|
*/
|
|
6303
|
-
|
|
6304
|
-
|
|
6718
|
+
getContextSuggestions(examId: string, options?: ExamplaryRequestOptions): Promise<Response<"exams.getContextSuggestions">>;
|
|
6719
|
+
getContextSuggestions(args: Args<"exams.getContextSuggestions">, options?: ExamplaryRequestOptions): Promise<Response<"exams.getContextSuggestions">>;
|
|
6305
6720
|
}
|
|
6306
|
-
declare class
|
|
6721
|
+
declare class Me {
|
|
6307
6722
|
private readonly ctx;
|
|
6308
6723
|
constructor(ctx: ClientContext);
|
|
6309
6724
|
/**
|
|
6310
|
-
*
|
|
6725
|
+
* Get me
|
|
6311
6726
|
*
|
|
6312
|
-
* Get
|
|
6727
|
+
* Get the current user's account details.
|
|
6313
6728
|
*
|
|
6314
|
-
* API endpoint: `GET /
|
|
6729
|
+
* API endpoint: `GET /me`
|
|
6315
6730
|
*/
|
|
6316
|
-
|
|
6317
|
-
list(args: Args<"exams.sessions.list">, options?: ExamplaryRequestOptions): Promise<Response<"exams.sessions.list">>;
|
|
6731
|
+
get(args?: Args<"me.get">, options?: ExamplaryRequestOptions): Promise<Response<"me.get">>;
|
|
6318
6732
|
/**
|
|
6319
|
-
*
|
|
6733
|
+
* Update me
|
|
6320
6734
|
*
|
|
6321
|
-
*
|
|
6735
|
+
* Update the current user's account details.
|
|
6322
6736
|
*
|
|
6323
|
-
* API endpoint: `
|
|
6737
|
+
* API endpoint: `PATCH /me`
|
|
6324
6738
|
*/
|
|
6325
|
-
|
|
6739
|
+
update(args?: Args<"me.update">, options?: ExamplaryRequestOptions): Promise<Response<"me.update">>;
|
|
6740
|
+
}
|
|
6741
|
+
declare class Media {
|
|
6742
|
+
private readonly ctx;
|
|
6743
|
+
constructor(ctx: ClientContext);
|
|
6326
6744
|
/**
|
|
6327
|
-
* Get
|
|
6745
|
+
* Get file upload URL
|
|
6328
6746
|
*
|
|
6329
|
-
*
|
|
6747
|
+
* Returns a signed URL for uploading a file, and a public URL for accessing it afterwards.
|
|
6330
6748
|
*
|
|
6331
|
-
* API endpoint: `
|
|
6749
|
+
* API endpoint: `GET /media/upload`
|
|
6332
6750
|
*/
|
|
6333
|
-
|
|
6334
|
-
|
|
6751
|
+
upload(args: Args$1, options?: ExamplaryRequestOptions): Promise<Response$1>;
|
|
6752
|
+
}
|
|
6753
|
+
declare class OrgCustomDomain {
|
|
6754
|
+
private readonly ctx;
|
|
6755
|
+
constructor(ctx: ClientContext);
|
|
6335
6756
|
/**
|
|
6336
|
-
*
|
|
6337
|
-
*
|
|
6338
|
-
* Start a background task to extract student answers from an uploaded PDF document.
|
|
6757
|
+
* Get custom domain configuration
|
|
6339
6758
|
*
|
|
6340
|
-
* API endpoint: `
|
|
6759
|
+
* API endpoint: `GET /org/custom-domain`
|
|
6341
6760
|
*/
|
|
6342
|
-
|
|
6761
|
+
get(args?: Args<"org.customDomain.get">, options?: ExamplaryRequestOptions): Promise<Response<"org.customDomain.get">>;
|
|
6343
6762
|
/**
|
|
6344
|
-
*
|
|
6345
|
-
*
|
|
6346
|
-
* Get a single exam session by its ID, representing a set of answers from a student.
|
|
6763
|
+
* Update custom domain configuration
|
|
6347
6764
|
*
|
|
6348
|
-
* API endpoint: `
|
|
6765
|
+
* API endpoint: `POST /org/custom-domain`
|
|
6349
6766
|
*/
|
|
6350
|
-
|
|
6767
|
+
update(args?: Args<"org.customDomain.update">, options?: ExamplaryRequestOptions): Promise<Response<"org.customDomain.update">>;
|
|
6768
|
+
}
|
|
6769
|
+
declare class Org {
|
|
6770
|
+
private readonly ctx;
|
|
6771
|
+
readonly customDomain: OrgCustomDomain;
|
|
6772
|
+
constructor(ctx: ClientContext);
|
|
6351
6773
|
/**
|
|
6352
|
-
*
|
|
6774
|
+
* Get organization
|
|
6353
6775
|
*
|
|
6354
|
-
*
|
|
6776
|
+
* API endpoint: `GET /org`
|
|
6777
|
+
*/
|
|
6778
|
+
get(args?: Args<"org.get">, options?: ExamplaryRequestOptions): Promise<Response<"org.get">>;
|
|
6779
|
+
/**
|
|
6780
|
+
* Update organization
|
|
6355
6781
|
*
|
|
6356
|
-
* API endpoint: `
|
|
6782
|
+
* API endpoint: `PATCH /org`
|
|
6357
6783
|
*/
|
|
6358
|
-
|
|
6784
|
+
update(args?: Args<"org.update">, options?: ExamplaryRequestOptions): Promise<Response<"org.update">>;
|
|
6359
6785
|
/**
|
|
6360
|
-
*
|
|
6786
|
+
* Delete organization
|
|
6361
6787
|
*
|
|
6362
|
-
*
|
|
6788
|
+
* API endpoint: `DELETE /org`
|
|
6789
|
+
*/
|
|
6790
|
+
delete(args?: Args<"org.delete">, options?: ExamplaryRequestOptions): Promise<Response<"org.delete">>;
|
|
6791
|
+
}
|
|
6792
|
+
declare class Orgs {
|
|
6793
|
+
private readonly ctx;
|
|
6794
|
+
constructor(ctx: ClientContext);
|
|
6795
|
+
/**
|
|
6796
|
+
* List all organizations
|
|
6363
6797
|
*
|
|
6364
|
-
* API endpoint: `
|
|
6798
|
+
* API endpoint: `GET /orgs`
|
|
6365
6799
|
*/
|
|
6366
|
-
|
|
6800
|
+
list(args?: Args<"orgs.list">, options?: ExamplaryRequestOptions): Promise<Response<"orgs.list">>;
|
|
6367
6801
|
/**
|
|
6368
|
-
*
|
|
6802
|
+
* Create a new organization
|
|
6369
6803
|
*
|
|
6370
|
-
*
|
|
6804
|
+
* Create a new workspace to collaborate with others on exams.
|
|
6371
6805
|
*
|
|
6372
|
-
* API endpoint: `POST /
|
|
6806
|
+
* API endpoint: `POST /orgs`
|
|
6373
6807
|
*/
|
|
6374
|
-
|
|
6808
|
+
create(args?: Args<"orgs.create">, options?: ExamplaryRequestOptions): Promise<Response<"orgs.create">>;
|
|
6809
|
+
}
|
|
6810
|
+
declare class AuditLogs {
|
|
6811
|
+
private readonly ctx;
|
|
6812
|
+
constructor(ctx: ClientContext);
|
|
6375
6813
|
/**
|
|
6376
|
-
*
|
|
6814
|
+
* List audit logs
|
|
6377
6815
|
*
|
|
6378
|
-
*
|
|
6816
|
+
* List the workspace's audit logs, newest first, with optional date range, actor and object filters. Paginated.
|
|
6379
6817
|
*
|
|
6380
|
-
* API endpoint: `
|
|
6818
|
+
* API endpoint: `GET /audit-logs`
|
|
6381
6819
|
*/
|
|
6382
|
-
|
|
6820
|
+
list(args?: Args<"audit-logs.list">, options?: ExamplaryRequestOptions): Promise<Response<"audit-logs.list">>;
|
|
6383
6821
|
/**
|
|
6384
|
-
*
|
|
6822
|
+
* Export audit logs
|
|
6385
6823
|
*
|
|
6386
|
-
*
|
|
6824
|
+
* Export audit logs for a date range (optionally filtered by actor/object) as ND-JSON. Returns a temporary download URL.
|
|
6387
6825
|
*
|
|
6388
|
-
* API endpoint: `
|
|
6826
|
+
* API endpoint: `GET /audit-logs/export`
|
|
6389
6827
|
*/
|
|
6390
|
-
|
|
6828
|
+
export(args: Args<"audit-logs.export">, options?: ExamplaryRequestOptions): Promise<Response<"audit-logs.export">>;
|
|
6829
|
+
}
|
|
6830
|
+
declare class ApiKeys {
|
|
6831
|
+
private readonly ctx;
|
|
6832
|
+
constructor(ctx: ClientContext);
|
|
6391
6833
|
/**
|
|
6392
|
-
*
|
|
6834
|
+
* Get API key
|
|
6393
6835
|
*
|
|
6394
|
-
*
|
|
6836
|
+
* Get the API key for the current org/user combination. Creates one if none exists.
|
|
6395
6837
|
*
|
|
6396
|
-
* API endpoint: `
|
|
6838
|
+
* API endpoint: `GET /api-keys`
|
|
6397
6839
|
*/
|
|
6398
|
-
|
|
6840
|
+
get(args?: Args<"apiKeys.get">, options?: ExamplaryRequestOptions): Promise<Response<"apiKeys.get">>;
|
|
6399
6841
|
/**
|
|
6400
|
-
*
|
|
6842
|
+
* Reset API key
|
|
6401
6843
|
*
|
|
6402
|
-
*
|
|
6844
|
+
* Invalidate old API keys for this org/user and create a new one.
|
|
6403
6845
|
*
|
|
6404
|
-
* API endpoint: `
|
|
6846
|
+
* API endpoint: `POST /api-keys/reset`
|
|
6405
6847
|
*/
|
|
6406
|
-
|
|
6848
|
+
reset(args?: Args<"apiKeys.reset">, options?: ExamplaryRequestOptions): Promise<Response<"apiKeys.reset">>;
|
|
6407
6849
|
}
|
|
6408
|
-
declare class
|
|
6850
|
+
declare class Attributes {
|
|
6409
6851
|
private readonly ctx;
|
|
6410
6852
|
constructor(ctx: ClientContext);
|
|
6411
6853
|
/**
|
|
6412
|
-
*
|
|
6854
|
+
* List attributes
|
|
6413
6855
|
*
|
|
6414
|
-
*
|
|
6856
|
+
* Get all custom attributes configured for the current workspace.
|
|
6415
6857
|
*
|
|
6416
|
-
* API endpoint: `
|
|
6858
|
+
* API endpoint: `GET /attributes`
|
|
6417
6859
|
*/
|
|
6418
|
-
|
|
6860
|
+
list(args?: Args<"attributes.list">, options?: ExamplaryRequestOptions): Promise<Response<"attributes.list">>;
|
|
6419
6861
|
/**
|
|
6420
|
-
*
|
|
6862
|
+
* Create attribute
|
|
6421
6863
|
*
|
|
6422
|
-
*
|
|
6864
|
+
* Create a new custom attribute in the current workspace.
|
|
6423
6865
|
*
|
|
6424
|
-
* API endpoint: `POST /
|
|
6866
|
+
* API endpoint: `POST /attributes`
|
|
6425
6867
|
*/
|
|
6426
|
-
|
|
6868
|
+
create(args?: Args<"attributes.create">, options?: ExamplaryRequestOptions): Promise<Response<"attributes.create">>;
|
|
6427
6869
|
/**
|
|
6428
|
-
*
|
|
6870
|
+
* Reorder attributes
|
|
6429
6871
|
*
|
|
6430
|
-
*
|
|
6872
|
+
* Update the position of multiple attributes at once.
|
|
6431
6873
|
*
|
|
6432
|
-
* API endpoint: `
|
|
6874
|
+
* API endpoint: `POST /attributes/reorder`
|
|
6433
6875
|
*/
|
|
6434
|
-
|
|
6876
|
+
reorder(args?: Args<"attributes.reorder">, options?: ExamplaryRequestOptions): Promise<Response<"attributes.reorder">>;
|
|
6435
6877
|
/**
|
|
6436
|
-
*
|
|
6878
|
+
* Update attribute
|
|
6437
6879
|
*
|
|
6438
|
-
* Update
|
|
6880
|
+
* Update an existing attribute in the current workspace.
|
|
6439
6881
|
*
|
|
6440
|
-
* API endpoint: `POST /
|
|
6882
|
+
* API endpoint: `POST /attributes/{id}`
|
|
6441
6883
|
*/
|
|
6442
|
-
|
|
6884
|
+
update(args: Args<"attributes.update">, options?: ExamplaryRequestOptions): Promise<Response<"attributes.update">>;
|
|
6885
|
+
/**
|
|
6886
|
+
* Delete attribute
|
|
6887
|
+
*
|
|
6888
|
+
* Delete a custom attribute from the current workspace. Default attributes cannot be deleted.
|
|
6889
|
+
*
|
|
6890
|
+
* API endpoint: `DELETE /attributes/{id}`
|
|
6891
|
+
*/
|
|
6892
|
+
delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<"attributes.delete">>;
|
|
6893
|
+
delete(args: Args<"attributes.delete">, options?: ExamplaryRequestOptions): Promise<Response<"attributes.delete">>;
|
|
6443
6894
|
}
|
|
6444
|
-
declare class
|
|
6895
|
+
declare class Taxonomies {
|
|
6445
6896
|
private readonly ctx;
|
|
6446
6897
|
constructor(ctx: ClientContext);
|
|
6447
6898
|
/**
|
|
6448
|
-
*
|
|
6899
|
+
* Get taxonomies
|
|
6449
6900
|
*
|
|
6450
|
-
*
|
|
6901
|
+
* Get a list available taxonomies, including defaults and taxonomies created in the current workspace.
|
|
6451
6902
|
*
|
|
6452
|
-
* API endpoint: `
|
|
6903
|
+
* API endpoint: `GET /taxonomies`
|
|
6453
6904
|
*/
|
|
6454
|
-
|
|
6455
|
-
qti3Zip(args: Args<"exams.export.qti3Zip">, options?: ExamplaryRequestOptions): Promise<Response<"exams.export.qti3Zip">>;
|
|
6905
|
+
list(args?: Args<"taxonomies.list">, options?: ExamplaryRequestOptions): Promise<Response<"taxonomies.list">>;
|
|
6456
6906
|
/**
|
|
6457
|
-
*
|
|
6907
|
+
* Create taxonomy
|
|
6458
6908
|
*
|
|
6459
|
-
*
|
|
6909
|
+
* Save a new taxonomy in the current workspace.
|
|
6460
6910
|
*
|
|
6461
|
-
* API endpoint: `POST /
|
|
6911
|
+
* API endpoint: `POST /taxonomies`
|
|
6462
6912
|
*/
|
|
6463
|
-
|
|
6464
|
-
qti21Zip(args: Args<"exams.export.qti21Zip">, options?: ExamplaryRequestOptions): Promise<Response<"exams.export.qti21Zip">>;
|
|
6465
|
-
}
|
|
6466
|
-
declare class Exams {
|
|
6467
|
-
private readonly ctx;
|
|
6468
|
-
readonly sessions: ExamsSessions;
|
|
6469
|
-
readonly questions: ExamsQuestions;
|
|
6470
|
-
readonly export: ExamsExport;
|
|
6471
|
-
constructor(ctx: ClientContext);
|
|
6913
|
+
create(args?: Args<"taxonomies.create">, options?: ExamplaryRequestOptions): Promise<Response<"taxonomies.create">>;
|
|
6472
6914
|
/**
|
|
6473
|
-
*
|
|
6915
|
+
* Update taxonomy
|
|
6474
6916
|
*
|
|
6475
|
-
*
|
|
6917
|
+
* Update an existing taxonomy in the current workspace.
|
|
6476
6918
|
*
|
|
6477
|
-
* API endpoint: `
|
|
6919
|
+
* API endpoint: `POST /taxonomies/{id}`
|
|
6478
6920
|
*/
|
|
6479
|
-
|
|
6921
|
+
update(args: Args<"taxonomies.update">, options?: ExamplaryRequestOptions): Promise<Response<"taxonomies.update">>;
|
|
6480
6922
|
/**
|
|
6481
|
-
*
|
|
6923
|
+
* Delete taxonomy
|
|
6482
6924
|
*
|
|
6483
|
-
*
|
|
6925
|
+
* Delete a taxonomy from the current workspace. This fails if there are any exams associated with the taxonomy.
|
|
6484
6926
|
*
|
|
6485
|
-
* API endpoint: `
|
|
6927
|
+
* API endpoint: `DELETE /taxonomies/{id}`
|
|
6486
6928
|
*/
|
|
6487
|
-
|
|
6929
|
+
delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<"taxonomies.delete">>;
|
|
6930
|
+
delete(args: Args<"taxonomies.delete">, options?: ExamplaryRequestOptions): Promise<Response<"taxonomies.delete">>;
|
|
6931
|
+
}
|
|
6932
|
+
declare class Permissions {
|
|
6933
|
+
private readonly ctx;
|
|
6934
|
+
constructor(ctx: ClientContext);
|
|
6488
6935
|
/**
|
|
6489
|
-
*
|
|
6936
|
+
* Autocomplete users and groups
|
|
6490
6937
|
*
|
|
6491
|
-
*
|
|
6938
|
+
* Search for users and groups to share with. Returns matches by name or email. Respects restricted group visibility.
|
|
6492
6939
|
*
|
|
6493
|
-
* API endpoint: `
|
|
6940
|
+
* API endpoint: `GET /permissions/autocomplete`
|
|
6494
6941
|
*/
|
|
6495
|
-
|
|
6942
|
+
autocomplete(args: Args<"permissions.autocomplete">, options?: ExamplaryRequestOptions): Promise<Response<"permissions.autocomplete">>;
|
|
6496
6943
|
/**
|
|
6497
|
-
* Get
|
|
6944
|
+
* Get sharing permissions
|
|
6498
6945
|
*
|
|
6499
|
-
* Get a
|
|
6946
|
+
* Get a list of users, groups and orgs that have access to a specific resource.
|
|
6500
6947
|
*
|
|
6501
|
-
* API endpoint: `GET /
|
|
6948
|
+
* API endpoint: `GET /permissions/{resource}`
|
|
6502
6949
|
*/
|
|
6503
|
-
|
|
6504
|
-
|
|
6950
|
+
list(resource: string, options?: ExamplaryRequestOptions): Promise<Response<"permissions.list">>;
|
|
6951
|
+
list(args: Args<"permissions.list">, options?: ExamplaryRequestOptions): Promise<Response<"permissions.list">>;
|
|
6505
6952
|
/**
|
|
6506
|
-
*
|
|
6953
|
+
* Create permission
|
|
6507
6954
|
*
|
|
6508
|
-
*
|
|
6955
|
+
* Create a new permission for a specific resource, or update the role of an existing actor.
|
|
6509
6956
|
*
|
|
6510
|
-
* API endpoint: `POST /
|
|
6957
|
+
* API endpoint: `POST /permissions/{resource}`
|
|
6511
6958
|
*/
|
|
6512
|
-
|
|
6513
|
-
update(args: Args<"exams.update">, options?: ExamplaryRequestOptions): Promise<Response<"exams.update">>;
|
|
6959
|
+
assign(args: Args<"permissions.assign">, options?: ExamplaryRequestOptions): Promise<Response<"permissions.assign">>;
|
|
6514
6960
|
/**
|
|
6515
|
-
*
|
|
6961
|
+
* Get actor role
|
|
6516
6962
|
*
|
|
6517
|
-
*
|
|
6963
|
+
* Get the role of a specific actor for a specific resource.
|
|
6518
6964
|
*
|
|
6519
|
-
* API endpoint: `
|
|
6965
|
+
* API endpoint: `GET /permissions/{resource}/{actor}`
|
|
6520
6966
|
*/
|
|
6521
|
-
|
|
6522
|
-
delete(args: Args<"exams.delete">, options?: ExamplaryRequestOptions): Promise<Response<"exams.delete">>;
|
|
6967
|
+
getActorRole(args: Args<"permissions.getActorRole">, options?: ExamplaryRequestOptions): Promise<Response<"permissions.getActorRole">>;
|
|
6523
6968
|
/**
|
|
6524
|
-
*
|
|
6969
|
+
* Remove permission
|
|
6525
6970
|
*
|
|
6526
|
-
*
|
|
6971
|
+
* Remove a permission for a specific actor on a specific resource.
|
|
6527
6972
|
*
|
|
6528
|
-
* API endpoint: `
|
|
6973
|
+
* API endpoint: `DELETE /permissions/{resource}/{actor}`
|
|
6529
6974
|
*/
|
|
6530
|
-
|
|
6975
|
+
delete(args: Args<"permissions.delete">, options?: ExamplaryRequestOptions): Promise<Response<"permissions.delete">>;
|
|
6976
|
+
}
|
|
6977
|
+
declare class StudentLevels {
|
|
6978
|
+
private readonly ctx;
|
|
6979
|
+
constructor(ctx: ClientContext);
|
|
6531
6980
|
/**
|
|
6532
|
-
*
|
|
6981
|
+
* List available student levels
|
|
6533
6982
|
*
|
|
6534
|
-
*
|
|
6983
|
+
* Get a list of available default student levels.
|
|
6535
6984
|
*
|
|
6536
|
-
* API endpoint: `
|
|
6985
|
+
* API endpoint: `GET /student-levels`
|
|
6537
6986
|
*/
|
|
6538
|
-
|
|
6539
|
-
|
|
6987
|
+
list(args?: Args<"studentLevels.list">, options?: ExamplaryRequestOptions): Promise<Response<"studentLevels.list">>;
|
|
6988
|
+
}
|
|
6989
|
+
declare class Users {
|
|
6990
|
+
private readonly ctx;
|
|
6991
|
+
constructor(ctx: ClientContext);
|
|
6540
6992
|
/**
|
|
6541
|
-
*
|
|
6993
|
+
* List users
|
|
6542
6994
|
*
|
|
6543
|
-
*
|
|
6995
|
+
* Get a list of all users in the workspace.
|
|
6544
6996
|
*
|
|
6545
|
-
* API endpoint: `
|
|
6997
|
+
* API endpoint: `GET /users`
|
|
6546
6998
|
*/
|
|
6547
|
-
|
|
6548
|
-
startGeneration(args: Args<"exams.startGeneration">, options?: ExamplaryRequestOptions): Promise<Response<"exams.startGeneration">>;
|
|
6999
|
+
list(args?: Args<"users.list">, options?: ExamplaryRequestOptions): Promise<Response<"users.list">>;
|
|
6549
7000
|
/**
|
|
6550
|
-
*
|
|
7001
|
+
* Create user
|
|
6551
7002
|
*
|
|
6552
|
-
*
|
|
7003
|
+
* Create a new user in the workspace.
|
|
6553
7004
|
*
|
|
6554
|
-
* API endpoint: `POST /
|
|
7005
|
+
* API endpoint: `POST /users`
|
|
6555
7006
|
*/
|
|
6556
|
-
|
|
6557
|
-
cancelGeneration(args: Args<"exams.cancelGeneration">, options?: ExamplaryRequestOptions): Promise<Response<"exams.cancelGeneration">>;
|
|
7007
|
+
create(args?: Args<"users.create">, options?: ExamplaryRequestOptions): Promise<Response<"users.create">>;
|
|
6558
7008
|
/**
|
|
6559
|
-
*
|
|
7009
|
+
* Update user role
|
|
6560
7010
|
*
|
|
6561
|
-
*
|
|
7011
|
+
* Update a user's role within the workspace.
|
|
6562
7012
|
*
|
|
6563
|
-
* API endpoint: `
|
|
7013
|
+
* API endpoint: `PATCH /users/{id}`
|
|
6564
7014
|
*/
|
|
6565
|
-
|
|
6566
|
-
|
|
7015
|
+
update(id: string, options?: ExamplaryRequestOptions): Promise<Response<"users.update">>;
|
|
7016
|
+
update(args: Args<"users.update">, options?: ExamplaryRequestOptions): Promise<Response<"users.update">>;
|
|
7017
|
+
/**
|
|
7018
|
+
* Delete user
|
|
7019
|
+
*
|
|
7020
|
+
* Delete a user from the workspace.
|
|
7021
|
+
*
|
|
7022
|
+
* API endpoint: `DELETE /users/{id}`
|
|
7023
|
+
*/
|
|
7024
|
+
delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<"users.delete">>;
|
|
7025
|
+
delete(args: Args<"users.delete">, options?: ExamplaryRequestOptions): Promise<Response<"users.delete">>;
|
|
6567
7026
|
}
|
|
6568
7027
|
declare class PracticeSpacesStudents {
|
|
6569
7028
|
private readonly ctx;
|
|
@@ -6921,6 +7380,43 @@ declare class QuestionBank {
|
|
|
6921
7380
|
delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<"questionBank.delete">>;
|
|
6922
7381
|
delete(args: Args<"questionBank.delete">, options?: ExamplaryRequestOptions): Promise<Response<"questionBank.delete">>;
|
|
6923
7382
|
}
|
|
7383
|
+
declare class Prompts {
|
|
7384
|
+
private readonly ctx;
|
|
7385
|
+
constructor(ctx: ClientContext);
|
|
7386
|
+
/**
|
|
7387
|
+
* Get prompts
|
|
7388
|
+
*
|
|
7389
|
+
* Get a list of reusable prompts, merging the workspace's saved prompts with the defaults provided by Examplary. Optionally filter by type and language.
|
|
7390
|
+
*
|
|
7391
|
+
* API endpoint: `GET /prompts`
|
|
7392
|
+
*/
|
|
7393
|
+
list(args?: Args<"prompts.list">, options?: ExamplaryRequestOptions): Promise<Response<"prompts.list">>;
|
|
7394
|
+
/**
|
|
7395
|
+
* Save prompt
|
|
7396
|
+
*
|
|
7397
|
+
* Save a reusable prompt in the current workspace.
|
|
7398
|
+
*
|
|
7399
|
+
* API endpoint: `POST /prompts`
|
|
7400
|
+
*/
|
|
7401
|
+
create(args?: Args<"prompts.create">, options?: ExamplaryRequestOptions): Promise<Response<"prompts.create">>;
|
|
7402
|
+
/**
|
|
7403
|
+
* Update prompt
|
|
7404
|
+
*
|
|
7405
|
+
* Update an existing prompt in the current workspace.
|
|
7406
|
+
*
|
|
7407
|
+
* API endpoint: `PATCH /prompts/{id}`
|
|
7408
|
+
*/
|
|
7409
|
+
update(args: Args<"prompts.update">, options?: ExamplaryRequestOptions): Promise<Response<"prompts.update">>;
|
|
7410
|
+
/**
|
|
7411
|
+
* Delete prompt
|
|
7412
|
+
*
|
|
7413
|
+
* Delete a prompt from the current workspace.
|
|
7414
|
+
*
|
|
7415
|
+
* API endpoint: `DELETE /prompts/{id}`
|
|
7416
|
+
*/
|
|
7417
|
+
delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<"prompts.delete">>;
|
|
7418
|
+
delete(args: Args<"prompts.delete">, options?: ExamplaryRequestOptions): Promise<Response<"prompts.delete">>;
|
|
7419
|
+
}
|
|
6924
7420
|
declare class Jobs {
|
|
6925
7421
|
private readonly ctx;
|
|
6926
7422
|
constructor(ctx: ClientContext);
|
|
@@ -6949,22 +7445,24 @@ declare class Examplary {
|
|
|
6949
7445
|
readonly library: Library;
|
|
6950
7446
|
readonly oauth: Oauth;
|
|
6951
7447
|
readonly embedSessions: EmbedSessions;
|
|
7448
|
+
readonly exams: Exams;
|
|
6952
7449
|
readonly me: Me;
|
|
6953
7450
|
readonly media: Media;
|
|
6954
7451
|
readonly org: Org;
|
|
6955
7452
|
readonly orgs: Orgs;
|
|
7453
|
+
readonly auditLogs: AuditLogs;
|
|
6956
7454
|
readonly apiKeys: ApiKeys;
|
|
6957
7455
|
readonly attributes: Attributes;
|
|
6958
7456
|
readonly taxonomies: Taxonomies;
|
|
6959
7457
|
readonly permissions: Permissions;
|
|
6960
7458
|
readonly studentLevels: StudentLevels;
|
|
6961
7459
|
readonly users: Users;
|
|
6962
|
-
readonly exams: Exams;
|
|
6963
7460
|
readonly practiceSpaces: PracticeSpaces;
|
|
6964
7461
|
readonly sourceMaterials: SourceMaterials;
|
|
6965
7462
|
readonly folders: Folders;
|
|
6966
7463
|
readonly groups: Groups;
|
|
6967
7464
|
readonly questionBank: QuestionBank;
|
|
7465
|
+
readonly prompts: Prompts;
|
|
6968
7466
|
readonly jobs: Jobs;
|
|
6969
7467
|
constructor(options: ExamplaryClientOptions);
|
|
6970
7468
|
/**
|