academe-kit 0.3.8 → 0.3.9
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.ts +372 -362
- package/dist/index.esm.js +47 -0
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +47 -0
- package/dist/index.js.map +1 -1
- package/dist/types/services/InstitutionService.d.ts +1 -0
- package/dist/types/services/ProductService.d.ts +225 -0
- package/dist/types/services/UserService.d.ts +2 -0
- package/dist/types/services/index.d.ts +3 -0
- package/dist/types/types/academe-api.d.ts +145 -362
- package/package.json +1 -1
|
@@ -4760,7 +4760,7 @@ export interface paths {
|
|
|
4760
4760
|
};
|
|
4761
4761
|
trace?: never;
|
|
4762
4762
|
};
|
|
4763
|
-
"/
|
|
4763
|
+
"/products": {
|
|
4764
4764
|
parameters: {
|
|
4765
4765
|
query?: never;
|
|
4766
4766
|
header?: never;
|
|
@@ -4768,14 +4768,20 @@ export interface paths {
|
|
|
4768
4768
|
cookie?: never;
|
|
4769
4769
|
};
|
|
4770
4770
|
/**
|
|
4771
|
-
*
|
|
4772
|
-
* @description Retrieve a list of all
|
|
4771
|
+
* List all products
|
|
4772
|
+
* @description Retrieve a paginated list of all products
|
|
4773
4773
|
*/
|
|
4774
4774
|
get: {
|
|
4775
4775
|
parameters: {
|
|
4776
4776
|
query?: {
|
|
4777
|
-
/** @description
|
|
4777
|
+
/** @description Filter by product name (partial match) */
|
|
4778
|
+
name?: string;
|
|
4779
|
+
/** @description Search products by name */
|
|
4778
4780
|
search?: string;
|
|
4781
|
+
/** @description Page number */
|
|
4782
|
+
page?: number;
|
|
4783
|
+
/** @description Number of items per page */
|
|
4784
|
+
limit?: number;
|
|
4779
4785
|
};
|
|
4780
4786
|
header?: never;
|
|
4781
4787
|
path?: never;
|
|
@@ -4783,21 +4789,33 @@ export interface paths {
|
|
|
4783
4789
|
};
|
|
4784
4790
|
requestBody?: never;
|
|
4785
4791
|
responses: {
|
|
4786
|
-
/** @description List of
|
|
4792
|
+
/** @description List of products */
|
|
4787
4793
|
200: {
|
|
4788
4794
|
headers: {
|
|
4789
4795
|
[name: string]: unknown;
|
|
4790
4796
|
};
|
|
4791
4797
|
content: {
|
|
4792
|
-
"application/json":
|
|
4798
|
+
"application/json": {
|
|
4799
|
+
/** @example success */
|
|
4800
|
+
status?: string;
|
|
4801
|
+
data?: components["schemas"]["Product"][];
|
|
4802
|
+
meta?: {
|
|
4803
|
+
total?: number;
|
|
4804
|
+
page?: number;
|
|
4805
|
+
limit?: number;
|
|
4806
|
+
totalPages?: number;
|
|
4807
|
+
};
|
|
4808
|
+
};
|
|
4793
4809
|
};
|
|
4794
4810
|
};
|
|
4811
|
+
401: components["responses"]["Unauthorized"];
|
|
4812
|
+
500: components["responses"]["ServerError"];
|
|
4795
4813
|
};
|
|
4796
4814
|
};
|
|
4797
4815
|
put?: never;
|
|
4798
4816
|
/**
|
|
4799
|
-
* Create a new
|
|
4800
|
-
* @description Create a new
|
|
4817
|
+
* Create a new product
|
|
4818
|
+
* @description Create a new product in the system
|
|
4801
4819
|
*/
|
|
4802
4820
|
post: {
|
|
4803
4821
|
parameters: {
|
|
@@ -4808,26 +4826,40 @@ export interface paths {
|
|
|
4808
4826
|
};
|
|
4809
4827
|
requestBody: {
|
|
4810
4828
|
content: {
|
|
4811
|
-
"application/json": components["schemas"]["
|
|
4829
|
+
"application/json": components["schemas"]["CreateProductDto"];
|
|
4812
4830
|
};
|
|
4813
4831
|
};
|
|
4814
4832
|
responses: {
|
|
4815
|
-
/** @description
|
|
4833
|
+
/** @description Product created successfully */
|
|
4816
4834
|
201: {
|
|
4817
4835
|
headers: {
|
|
4818
4836
|
[name: string]: unknown;
|
|
4819
4837
|
};
|
|
4820
4838
|
content: {
|
|
4821
|
-
"application/json":
|
|
4839
|
+
"application/json": {
|
|
4840
|
+
/** @example success */
|
|
4841
|
+
status?: string;
|
|
4842
|
+
data?: components["schemas"]["Product"];
|
|
4843
|
+
};
|
|
4822
4844
|
};
|
|
4823
4845
|
};
|
|
4824
|
-
|
|
4846
|
+
400: components["responses"]["BadRequest"];
|
|
4847
|
+
401: components["responses"]["Unauthorized"];
|
|
4848
|
+
/** @description Product with this name already exists */
|
|
4825
4849
|
409: {
|
|
4826
4850
|
headers: {
|
|
4827
4851
|
[name: string]: unknown;
|
|
4828
4852
|
};
|
|
4829
|
-
content
|
|
4853
|
+
content: {
|
|
4854
|
+
"application/json": {
|
|
4855
|
+
/** @example error */
|
|
4856
|
+
status?: string;
|
|
4857
|
+
/** @example Product with this name already exists */
|
|
4858
|
+
message?: string;
|
|
4859
|
+
};
|
|
4860
|
+
};
|
|
4830
4861
|
};
|
|
4862
|
+
500: components["responses"]["ServerError"];
|
|
4831
4863
|
};
|
|
4832
4864
|
};
|
|
4833
4865
|
delete?: never;
|
|
@@ -4836,7 +4868,7 @@ export interface paths {
|
|
|
4836
4868
|
patch?: never;
|
|
4837
4869
|
trace?: never;
|
|
4838
4870
|
};
|
|
4839
|
-
"/
|
|
4871
|
+
"/products/{id}": {
|
|
4840
4872
|
parameters: {
|
|
4841
4873
|
query?: never;
|
|
4842
4874
|
header?: never;
|
|
@@ -4844,111 +4876,117 @@ export interface paths {
|
|
|
4844
4876
|
cookie?: never;
|
|
4845
4877
|
};
|
|
4846
4878
|
/**
|
|
4847
|
-
* Get
|
|
4848
|
-
* @description Retrieve
|
|
4879
|
+
* Get product by ID
|
|
4880
|
+
* @description Retrieve detailed information about a specific product including associated seats
|
|
4849
4881
|
*/
|
|
4850
4882
|
get: {
|
|
4851
4883
|
parameters: {
|
|
4852
4884
|
query?: never;
|
|
4853
4885
|
header?: never;
|
|
4854
4886
|
path: {
|
|
4855
|
-
/** @description
|
|
4887
|
+
/** @description Product ID */
|
|
4856
4888
|
id: string;
|
|
4857
4889
|
};
|
|
4858
4890
|
cookie?: never;
|
|
4859
4891
|
};
|
|
4860
4892
|
requestBody?: never;
|
|
4861
4893
|
responses: {
|
|
4862
|
-
/** @description
|
|
4894
|
+
/** @description Product information */
|
|
4863
4895
|
200: {
|
|
4864
4896
|
headers: {
|
|
4865
4897
|
[name: string]: unknown;
|
|
4866
4898
|
};
|
|
4867
4899
|
content: {
|
|
4868
|
-
"application/json":
|
|
4869
|
-
|
|
4870
|
-
|
|
4871
|
-
|
|
4872
|
-
|
|
4873
|
-
headers: {
|
|
4874
|
-
[name: string]: unknown;
|
|
4900
|
+
"application/json": {
|
|
4901
|
+
/** @example success */
|
|
4902
|
+
status?: string;
|
|
4903
|
+
data?: components["schemas"]["Product"];
|
|
4904
|
+
};
|
|
4875
4905
|
};
|
|
4876
|
-
content?: never;
|
|
4877
4906
|
};
|
|
4907
|
+
400: components["responses"]["BadRequest"];
|
|
4908
|
+
401: components["responses"]["Unauthorized"];
|
|
4909
|
+
404: components["responses"]["NotFound"];
|
|
4910
|
+
500: components["responses"]["ServerError"];
|
|
4878
4911
|
};
|
|
4879
4912
|
};
|
|
4880
4913
|
put?: never;
|
|
4881
4914
|
post?: never;
|
|
4882
4915
|
/**
|
|
4883
|
-
* Delete
|
|
4884
|
-
* @description
|
|
4916
|
+
* Delete product
|
|
4917
|
+
* @description Remove a product from the system
|
|
4885
4918
|
*/
|
|
4886
4919
|
delete: {
|
|
4887
4920
|
parameters: {
|
|
4888
4921
|
query?: never;
|
|
4889
4922
|
header?: never;
|
|
4890
4923
|
path: {
|
|
4891
|
-
/** @description
|
|
4924
|
+
/** @description Product ID */
|
|
4892
4925
|
id: string;
|
|
4893
4926
|
};
|
|
4894
4927
|
cookie?: never;
|
|
4895
4928
|
};
|
|
4896
4929
|
requestBody?: never;
|
|
4897
4930
|
responses: {
|
|
4898
|
-
/** @description
|
|
4931
|
+
/** @description Product deleted successfully */
|
|
4899
4932
|
204: {
|
|
4900
4933
|
headers: {
|
|
4901
4934
|
[name: string]: unknown;
|
|
4902
4935
|
};
|
|
4903
4936
|
content?: never;
|
|
4904
4937
|
};
|
|
4905
|
-
|
|
4906
|
-
|
|
4907
|
-
|
|
4908
|
-
|
|
4909
|
-
};
|
|
4910
|
-
content?: never;
|
|
4911
|
-
};
|
|
4938
|
+
400: components["responses"]["BadRequest"];
|
|
4939
|
+
401: components["responses"]["Unauthorized"];
|
|
4940
|
+
404: components["responses"]["NotFound"];
|
|
4941
|
+
500: components["responses"]["ServerError"];
|
|
4912
4942
|
};
|
|
4913
4943
|
};
|
|
4914
4944
|
options?: never;
|
|
4915
4945
|
head?: never;
|
|
4916
4946
|
/**
|
|
4917
|
-
* Update
|
|
4918
|
-
* @description Update
|
|
4947
|
+
* Update product
|
|
4948
|
+
* @description Update product information
|
|
4919
4949
|
*/
|
|
4920
4950
|
patch: {
|
|
4921
4951
|
parameters: {
|
|
4922
4952
|
query?: never;
|
|
4923
4953
|
header?: never;
|
|
4924
4954
|
path: {
|
|
4925
|
-
/** @description
|
|
4955
|
+
/** @description Product ID */
|
|
4926
4956
|
id: string;
|
|
4927
4957
|
};
|
|
4928
4958
|
cookie?: never;
|
|
4929
4959
|
};
|
|
4930
4960
|
requestBody: {
|
|
4931
4961
|
content: {
|
|
4932
|
-
"application/json": components["schemas"]["
|
|
4962
|
+
"application/json": components["schemas"]["UpdateProductDto"];
|
|
4933
4963
|
};
|
|
4934
4964
|
};
|
|
4935
4965
|
responses: {
|
|
4936
|
-
/** @description
|
|
4966
|
+
/** @description Product updated successfully */
|
|
4937
4967
|
200: {
|
|
4938
4968
|
headers: {
|
|
4939
4969
|
[name: string]: unknown;
|
|
4940
4970
|
};
|
|
4941
4971
|
content: {
|
|
4942
|
-
"application/json":
|
|
4972
|
+
"application/json": {
|
|
4973
|
+
/** @example success */
|
|
4974
|
+
status?: string;
|
|
4975
|
+
data?: components["schemas"]["Product"];
|
|
4976
|
+
};
|
|
4943
4977
|
};
|
|
4944
4978
|
};
|
|
4945
|
-
|
|
4946
|
-
|
|
4979
|
+
400: components["responses"]["BadRequest"];
|
|
4980
|
+
401: components["responses"]["Unauthorized"];
|
|
4981
|
+
404: components["responses"]["NotFound"];
|
|
4982
|
+
/** @description Product with this name already exists */
|
|
4983
|
+
409: {
|
|
4947
4984
|
headers: {
|
|
4948
4985
|
[name: string]: unknown;
|
|
4949
4986
|
};
|
|
4950
4987
|
content?: never;
|
|
4951
4988
|
};
|
|
4989
|
+
500: components["responses"]["ServerError"];
|
|
4952
4990
|
};
|
|
4953
4991
|
};
|
|
4954
4992
|
trace?: never;
|
|
@@ -7345,203 +7383,6 @@ export interface paths {
|
|
|
7345
7383
|
};
|
|
7346
7384
|
trace?: never;
|
|
7347
7385
|
};
|
|
7348
|
-
"/subscriptions": {
|
|
7349
|
-
parameters: {
|
|
7350
|
-
query?: never;
|
|
7351
|
-
header?: never;
|
|
7352
|
-
path?: never;
|
|
7353
|
-
cookie?: never;
|
|
7354
|
-
};
|
|
7355
|
-
/**
|
|
7356
|
-
* Get all subscriptions
|
|
7357
|
-
* @description Retrieve a list of all subscriptions with optional filters
|
|
7358
|
-
*/
|
|
7359
|
-
get: {
|
|
7360
|
-
parameters: {
|
|
7361
|
-
query?: {
|
|
7362
|
-
/** @description Filter by plan ID */
|
|
7363
|
-
planId?: string;
|
|
7364
|
-
/** @description Filter by institution ID */
|
|
7365
|
-
institutionId?: string;
|
|
7366
|
-
/** @description Filter by group ID */
|
|
7367
|
-
groupId?: string;
|
|
7368
|
-
};
|
|
7369
|
-
header?: never;
|
|
7370
|
-
path?: never;
|
|
7371
|
-
cookie?: never;
|
|
7372
|
-
};
|
|
7373
|
-
requestBody?: never;
|
|
7374
|
-
responses: {
|
|
7375
|
-
/** @description List of subscriptions */
|
|
7376
|
-
200: {
|
|
7377
|
-
headers: {
|
|
7378
|
-
[name: string]: unknown;
|
|
7379
|
-
};
|
|
7380
|
-
content: {
|
|
7381
|
-
"application/json": components["schemas"]["Subscription"][];
|
|
7382
|
-
};
|
|
7383
|
-
};
|
|
7384
|
-
};
|
|
7385
|
-
};
|
|
7386
|
-
put?: never;
|
|
7387
|
-
/**
|
|
7388
|
-
* Create a new subscription
|
|
7389
|
-
* @description Create a subscription linking a plan to an institution or group
|
|
7390
|
-
*/
|
|
7391
|
-
post: {
|
|
7392
|
-
parameters: {
|
|
7393
|
-
query?: never;
|
|
7394
|
-
header?: never;
|
|
7395
|
-
path?: never;
|
|
7396
|
-
cookie?: never;
|
|
7397
|
-
};
|
|
7398
|
-
requestBody: {
|
|
7399
|
-
content: {
|
|
7400
|
-
"application/json": components["schemas"]["CreateSubscriptionDto"];
|
|
7401
|
-
};
|
|
7402
|
-
};
|
|
7403
|
-
responses: {
|
|
7404
|
-
/** @description Subscription created successfully */
|
|
7405
|
-
201: {
|
|
7406
|
-
headers: {
|
|
7407
|
-
[name: string]: unknown;
|
|
7408
|
-
};
|
|
7409
|
-
content: {
|
|
7410
|
-
"application/json": components["schemas"]["Subscription"];
|
|
7411
|
-
};
|
|
7412
|
-
};
|
|
7413
|
-
/** @description Invalid request (missing required fields) */
|
|
7414
|
-
400: {
|
|
7415
|
-
headers: {
|
|
7416
|
-
[name: string]: unknown;
|
|
7417
|
-
};
|
|
7418
|
-
content?: never;
|
|
7419
|
-
};
|
|
7420
|
-
};
|
|
7421
|
-
};
|
|
7422
|
-
delete?: never;
|
|
7423
|
-
options?: never;
|
|
7424
|
-
head?: never;
|
|
7425
|
-
patch?: never;
|
|
7426
|
-
trace?: never;
|
|
7427
|
-
};
|
|
7428
|
-
"/subscriptions/{id}": {
|
|
7429
|
-
parameters: {
|
|
7430
|
-
query?: never;
|
|
7431
|
-
header?: never;
|
|
7432
|
-
path?: never;
|
|
7433
|
-
cookie?: never;
|
|
7434
|
-
};
|
|
7435
|
-
/**
|
|
7436
|
-
* Get a subscription by ID
|
|
7437
|
-
* @description Retrieve details of a specific subscription
|
|
7438
|
-
*/
|
|
7439
|
-
get: {
|
|
7440
|
-
parameters: {
|
|
7441
|
-
query?: never;
|
|
7442
|
-
header?: never;
|
|
7443
|
-
path: {
|
|
7444
|
-
/** @description Subscription ID */
|
|
7445
|
-
id: string;
|
|
7446
|
-
};
|
|
7447
|
-
cookie?: never;
|
|
7448
|
-
};
|
|
7449
|
-
requestBody?: never;
|
|
7450
|
-
responses: {
|
|
7451
|
-
/** @description Subscription found */
|
|
7452
|
-
200: {
|
|
7453
|
-
headers: {
|
|
7454
|
-
[name: string]: unknown;
|
|
7455
|
-
};
|
|
7456
|
-
content: {
|
|
7457
|
-
"application/json": components["schemas"]["Subscription"];
|
|
7458
|
-
};
|
|
7459
|
-
};
|
|
7460
|
-
/** @description Subscription not found */
|
|
7461
|
-
404: {
|
|
7462
|
-
headers: {
|
|
7463
|
-
[name: string]: unknown;
|
|
7464
|
-
};
|
|
7465
|
-
content?: never;
|
|
7466
|
-
};
|
|
7467
|
-
};
|
|
7468
|
-
};
|
|
7469
|
-
put?: never;
|
|
7470
|
-
post?: never;
|
|
7471
|
-
/**
|
|
7472
|
-
* Delete a subscription
|
|
7473
|
-
* @description Delete an existing subscription
|
|
7474
|
-
*/
|
|
7475
|
-
delete: {
|
|
7476
|
-
parameters: {
|
|
7477
|
-
query?: never;
|
|
7478
|
-
header?: never;
|
|
7479
|
-
path: {
|
|
7480
|
-
/** @description Subscription ID */
|
|
7481
|
-
id: string;
|
|
7482
|
-
};
|
|
7483
|
-
cookie?: never;
|
|
7484
|
-
};
|
|
7485
|
-
requestBody?: never;
|
|
7486
|
-
responses: {
|
|
7487
|
-
/** @description Subscription deleted successfully */
|
|
7488
|
-
204: {
|
|
7489
|
-
headers: {
|
|
7490
|
-
[name: string]: unknown;
|
|
7491
|
-
};
|
|
7492
|
-
content?: never;
|
|
7493
|
-
};
|
|
7494
|
-
/** @description Subscription not found */
|
|
7495
|
-
404: {
|
|
7496
|
-
headers: {
|
|
7497
|
-
[name: string]: unknown;
|
|
7498
|
-
};
|
|
7499
|
-
content?: never;
|
|
7500
|
-
};
|
|
7501
|
-
};
|
|
7502
|
-
};
|
|
7503
|
-
options?: never;
|
|
7504
|
-
head?: never;
|
|
7505
|
-
/**
|
|
7506
|
-
* Update a subscription
|
|
7507
|
-
* @description Update an existing subscription
|
|
7508
|
-
*/
|
|
7509
|
-
patch: {
|
|
7510
|
-
parameters: {
|
|
7511
|
-
query?: never;
|
|
7512
|
-
header?: never;
|
|
7513
|
-
path: {
|
|
7514
|
-
/** @description Subscription ID */
|
|
7515
|
-
id: string;
|
|
7516
|
-
};
|
|
7517
|
-
cookie?: never;
|
|
7518
|
-
};
|
|
7519
|
-
requestBody: {
|
|
7520
|
-
content: {
|
|
7521
|
-
"application/json": components["schemas"]["UpdateSubscriptionDto"];
|
|
7522
|
-
};
|
|
7523
|
-
};
|
|
7524
|
-
responses: {
|
|
7525
|
-
/** @description Subscription updated successfully */
|
|
7526
|
-
200: {
|
|
7527
|
-
headers: {
|
|
7528
|
-
[name: string]: unknown;
|
|
7529
|
-
};
|
|
7530
|
-
content: {
|
|
7531
|
-
"application/json": components["schemas"]["Subscription"];
|
|
7532
|
-
};
|
|
7533
|
-
};
|
|
7534
|
-
/** @description Subscription not found */
|
|
7535
|
-
404: {
|
|
7536
|
-
headers: {
|
|
7537
|
-
[name: string]: unknown;
|
|
7538
|
-
};
|
|
7539
|
-
content?: never;
|
|
7540
|
-
};
|
|
7541
|
-
};
|
|
7542
|
-
};
|
|
7543
|
-
trace?: never;
|
|
7544
|
-
};
|
|
7545
7386
|
"/superset/dashboard/{dash_id}": {
|
|
7546
7387
|
parameters: {
|
|
7547
7388
|
query?: never;
|
|
@@ -9263,6 +9104,11 @@ export interface components {
|
|
|
9263
9104
|
* @description Group ID
|
|
9264
9105
|
*/
|
|
9265
9106
|
groupId?: string;
|
|
9107
|
+
/**
|
|
9108
|
+
* Format: uuid
|
|
9109
|
+
* @description Product ID associated with this seat
|
|
9110
|
+
*/
|
|
9111
|
+
productId?: string;
|
|
9266
9112
|
/** @description Available quantity for this group in the institution */
|
|
9267
9113
|
availableQuantity?: number;
|
|
9268
9114
|
/** @description Number of users currently assigned to this group in the institution */
|
|
@@ -9272,6 +9118,7 @@ export interface components {
|
|
|
9272
9118
|
/** Format: date-time */
|
|
9273
9119
|
updatedAt?: string;
|
|
9274
9120
|
group?: components["schemas"]["Group"];
|
|
9121
|
+
product?: components["schemas"]["Product"];
|
|
9275
9122
|
};
|
|
9276
9123
|
CreateSeatsDto: {
|
|
9277
9124
|
/**
|
|
@@ -9279,6 +9126,11 @@ export interface components {
|
|
|
9279
9126
|
* @description Group ID to associate with the institution
|
|
9280
9127
|
*/
|
|
9281
9128
|
groupId: string;
|
|
9129
|
+
/**
|
|
9130
|
+
* Format: uuid
|
|
9131
|
+
* @description Product ID to associate with the seat
|
|
9132
|
+
*/
|
|
9133
|
+
productId: string;
|
|
9282
9134
|
/**
|
|
9283
9135
|
* @description Available quantity for this group
|
|
9284
9136
|
* @default 0
|
|
@@ -9289,75 +9141,65 @@ export interface components {
|
|
|
9289
9141
|
/** @description New available quantity for this group */
|
|
9290
9142
|
availableQuantity: number;
|
|
9291
9143
|
};
|
|
9292
|
-
|
|
9144
|
+
/**
|
|
9145
|
+
* @example {
|
|
9146
|
+
* "id": "550e8400-e29b-41d4-a716-446655440000",
|
|
9147
|
+
* "name": "Premium Plan",
|
|
9148
|
+
* "description": "Full access to all platform features",
|
|
9149
|
+
* "createdAt": "2024-01-15T10:30:00Z",
|
|
9150
|
+
* "updatedAt": "2024-01-15T10:30:00Z"
|
|
9151
|
+
* }
|
|
9152
|
+
*/
|
|
9153
|
+
Product: {
|
|
9293
9154
|
/**
|
|
9294
9155
|
* Format: uuid
|
|
9295
|
-
* @description Unique identifier
|
|
9296
|
-
*/
|
|
9297
|
-
id: string;
|
|
9298
|
-
/**
|
|
9299
|
-
* @description Unique code for the plan (e.g., gold_plan, free_tier)
|
|
9300
|
-
* @example gold_plan
|
|
9156
|
+
* @description Unique identifier of the product
|
|
9301
9157
|
*/
|
|
9302
|
-
|
|
9303
|
-
/**
|
|
9304
|
-
|
|
9305
|
-
|
|
9306
|
-
|
|
9307
|
-
name: string;
|
|
9308
|
-
/**
|
|
9309
|
-
* @description JSON object with plan settings and configurations
|
|
9310
|
-
* @example {
|
|
9311
|
-
* "maxUsers": 100,
|
|
9312
|
-
* "features": [
|
|
9313
|
-
* "analytics",
|
|
9314
|
-
* "support"
|
|
9315
|
-
* ]
|
|
9316
|
-
* }
|
|
9317
|
-
*/
|
|
9318
|
-
settings: Record<string, never>;
|
|
9319
|
-
/**
|
|
9320
|
-
* @description Whether the plan is currently active
|
|
9321
|
-
* @default true
|
|
9322
|
-
*/
|
|
9323
|
-
isActive: boolean;
|
|
9158
|
+
id?: string;
|
|
9159
|
+
/** @description Name of the product */
|
|
9160
|
+
name?: string;
|
|
9161
|
+
/** @description Description of the product */
|
|
9162
|
+
description?: string | null;
|
|
9324
9163
|
/**
|
|
9325
9164
|
* Format: date-time
|
|
9326
|
-
* @description
|
|
9165
|
+
* @description Creation timestamp
|
|
9327
9166
|
*/
|
|
9328
9167
|
createdAt?: string;
|
|
9329
|
-
};
|
|
9330
|
-
CreatePlanDto: {
|
|
9331
9168
|
/**
|
|
9332
|
-
*
|
|
9333
|
-
* @
|
|
9169
|
+
* Format: date-time
|
|
9170
|
+
* @description Last update timestamp
|
|
9334
9171
|
*/
|
|
9335
|
-
|
|
9172
|
+
updatedAt?: string;
|
|
9173
|
+
};
|
|
9174
|
+
/**
|
|
9175
|
+
* @example {
|
|
9176
|
+
* "id": "550e8400-e29b-41d4-a716-446655440000",
|
|
9177
|
+
* "name": "Premium Plan",
|
|
9178
|
+
* "description": "Full access to all platform features"
|
|
9179
|
+
* }
|
|
9180
|
+
*/
|
|
9181
|
+
CreateProductDto: {
|
|
9336
9182
|
/**
|
|
9337
|
-
*
|
|
9338
|
-
* @
|
|
9183
|
+
* Format: uuid
|
|
9184
|
+
* @description Optional custom UUID for the product (auto-generated if not provided)
|
|
9339
9185
|
*/
|
|
9186
|
+
id?: string;
|
|
9187
|
+
/** @description Name of the product */
|
|
9340
9188
|
name: string;
|
|
9341
|
-
/**
|
|
9342
|
-
|
|
9343
|
-
* @example {
|
|
9344
|
-
* "maxUsers": 100
|
|
9345
|
-
* }
|
|
9346
|
-
*/
|
|
9347
|
-
settings?: Record<string, never>;
|
|
9348
|
-
/**
|
|
9349
|
-
* @description Whether the plan is active
|
|
9350
|
-
* @default true
|
|
9351
|
-
*/
|
|
9352
|
-
isActive: boolean;
|
|
9189
|
+
/** @description Description of the product */
|
|
9190
|
+
description?: string;
|
|
9353
9191
|
};
|
|
9354
|
-
|
|
9355
|
-
|
|
9192
|
+
/**
|
|
9193
|
+
* @example {
|
|
9194
|
+
* "name": "Premium Plan Updated",
|
|
9195
|
+
* "description": "Updated description"
|
|
9196
|
+
* }
|
|
9197
|
+
*/
|
|
9198
|
+
UpdateProductDto: {
|
|
9199
|
+
/** @description Name of the product */
|
|
9356
9200
|
name?: string;
|
|
9357
|
-
/** @description
|
|
9358
|
-
|
|
9359
|
-
/** @description Whether the plan is active */
|
|
9360
|
-
isActive?: boolean;
|
|
9201
|
+
/** @description Description of the product */
|
|
9202
|
+
description?: string;
|
|
9361
9203
|
};
|
|
9362
9204
|
StudentWithClass: {
|
|
9363
9205
|
/** Format: uuid */
|
|
@@ -9442,71 +9284,6 @@ export interface components {
|
|
|
9442
9284
|
totalStudents?: number;
|
|
9443
9285
|
year?: number;
|
|
9444
9286
|
};
|
|
9445
|
-
Subscription: {
|
|
9446
|
-
/**
|
|
9447
|
-
* Format: uuid
|
|
9448
|
-
* @description Unique identifier for the subscription
|
|
9449
|
-
*/
|
|
9450
|
-
id: string;
|
|
9451
|
-
/**
|
|
9452
|
-
* Format: uuid
|
|
9453
|
-
* @description ID of the associated plan
|
|
9454
|
-
*/
|
|
9455
|
-
planId: string;
|
|
9456
|
-
/**
|
|
9457
|
-
* Format: uuid
|
|
9458
|
-
* @description ID of the associated institution (optional)
|
|
9459
|
-
*/
|
|
9460
|
-
institutionId?: string | null;
|
|
9461
|
-
/**
|
|
9462
|
-
* Format: uuid
|
|
9463
|
-
* @description ID of the associated group (optional)
|
|
9464
|
-
*/
|
|
9465
|
-
groupId?: string | null;
|
|
9466
|
-
/**
|
|
9467
|
-
* Format: date-time
|
|
9468
|
-
* @description Timestamp when the subscription was created
|
|
9469
|
-
*/
|
|
9470
|
-
createdAt?: string;
|
|
9471
|
-
plan?: components["schemas"]["Plan"];
|
|
9472
|
-
institution?: components["schemas"]["Institution"];
|
|
9473
|
-
group?: components["schemas"]["Group"];
|
|
9474
|
-
};
|
|
9475
|
-
/** @description At least one of institutionId or groupId must be provided */
|
|
9476
|
-
CreateSubscriptionDto: {
|
|
9477
|
-
/**
|
|
9478
|
-
* Format: uuid
|
|
9479
|
-
* @description ID of the plan to subscribe to
|
|
9480
|
-
*/
|
|
9481
|
-
planId: string;
|
|
9482
|
-
/**
|
|
9483
|
-
* Format: uuid
|
|
9484
|
-
* @description ID of the institution (required if groupId is not provided)
|
|
9485
|
-
*/
|
|
9486
|
-
institutionId?: string | null;
|
|
9487
|
-
/**
|
|
9488
|
-
* Format: uuid
|
|
9489
|
-
* @description ID of the group (required if institutionId is not provided)
|
|
9490
|
-
*/
|
|
9491
|
-
groupId?: string | null;
|
|
9492
|
-
};
|
|
9493
|
-
UpdateSubscriptionDto: {
|
|
9494
|
-
/**
|
|
9495
|
-
* Format: uuid
|
|
9496
|
-
* @description ID of the plan
|
|
9497
|
-
*/
|
|
9498
|
-
planId?: string;
|
|
9499
|
-
/**
|
|
9500
|
-
* Format: uuid
|
|
9501
|
-
* @description ID of the institution
|
|
9502
|
-
*/
|
|
9503
|
-
institutionId?: string | null;
|
|
9504
|
-
/**
|
|
9505
|
-
* Format: uuid
|
|
9506
|
-
* @description ID of the group
|
|
9507
|
-
*/
|
|
9508
|
-
groupId?: string | null;
|
|
9509
|
-
};
|
|
9510
9287
|
CreateUserDto: {
|
|
9511
9288
|
/** @example John */
|
|
9512
9289
|
firstName: string;
|
|
@@ -9548,6 +9325,12 @@ export interface components {
|
|
|
9548
9325
|
* @example 550e8400-e29b-41d4-a716-446655440001
|
|
9549
9326
|
*/
|
|
9550
9327
|
institutionId?: string;
|
|
9328
|
+
/**
|
|
9329
|
+
* Format: uuid
|
|
9330
|
+
* @description Optional guardian ID to associate the user with a guardian
|
|
9331
|
+
* @example 550e8400-e29b-41d4-a716-446655440002
|
|
9332
|
+
*/
|
|
9333
|
+
guardianId?: string;
|
|
9551
9334
|
};
|
|
9552
9335
|
UserResponse: components["schemas"]["User"];
|
|
9553
9336
|
CreateInstitutionDto: {
|