@blezgo/api-sdk 0.1.5 → 0.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/dist/account/generated.d.ts +238 -238
  2. package/dist/account/generated.d.ts.map +1 -1
  3. package/dist/activity/generated.d.ts +57 -57
  4. package/dist/activity/generated.d.ts.map +1 -1
  5. package/dist/addon/generated.d.ts +82 -82
  6. package/dist/addon/generated.d.ts.map +1 -1
  7. package/dist/admin/generated.d.ts +102 -102
  8. package/dist/admin/generated.d.ts.map +1 -1
  9. package/dist/affiliate/generated.d.ts +81 -81
  10. package/dist/affiliate/generated.d.ts.map +1 -1
  11. package/dist/analytics/generated.d.ts +22 -22
  12. package/dist/analytics/generated.d.ts.map +1 -1
  13. package/dist/announcements/generated.d.ts +134 -134
  14. package/dist/announcements/generated.d.ts.map +1 -1
  15. package/dist/apikeys/generated.d.ts +69 -69
  16. package/dist/apikeys/generated.d.ts.map +1 -1
  17. package/dist/assistance/generated.d.ts +22 -22
  18. package/dist/assistance/generated.d.ts.map +1 -1
  19. package/dist/authentication/generated.d.ts +61 -61
  20. package/dist/authentication/generated.d.ts.map +1 -1
  21. package/dist/blog/generated.d.ts +206 -206
  22. package/dist/blog/generated.d.ts.map +1 -1
  23. package/dist/bundle/generated.d.ts +84 -84
  24. package/dist/bundle/generated.d.ts.map +1 -1
  25. package/dist/cache/generated.d.ts +38 -38
  26. package/dist/cache/generated.d.ts.map +1 -1
  27. package/dist/calendar/generated.d.ts +28 -28
  28. package/dist/calendar/generated.d.ts.map +1 -1
  29. package/dist/campaigns/generated.d.ts +174 -174
  30. package/dist/campaigns/generated.d.ts.map +1 -1
  31. package/dist/cart/generated.d.ts +28 -28
  32. package/dist/cart/generated.d.ts.map +1 -1
  33. package/dist/changelog/generated.d.ts +107 -107
  34. package/dist/changelog/generated.d.ts.map +1 -1
  35. package/dist/channel/generated.d.ts +224 -224
  36. package/dist/channel/generated.d.ts.map +1 -1
  37. package/dist/company/generated.d.ts +43 -43
  38. package/dist/company/generated.d.ts.map +1 -1
  39. package/dist/conference/generated.d.ts +74 -74
  40. package/dist/conference/generated.d.ts.map +1 -1
  41. package/dist/config/generated.d.ts +68 -68
  42. package/dist/config/generated.d.ts.map +1 -1
  43. package/dist/content/generated.d.ts +541 -541
  44. package/dist/content/generated.d.ts.map +1 -1
  45. package/dist/cookies/generated.d.ts +36 -36
  46. package/dist/cookies/generated.d.ts.map +1 -1
  47. package/dist/courses/generated.d.ts +436 -436
  48. package/dist/courses/generated.d.ts.map +1 -1
  49. package/dist/custom/generated.d.ts +83 -83
  50. package/dist/custom/generated.d.ts.map +1 -1
  51. package/dist/dashboard/generated.d.ts +214 -214
  52. package/dist/dashboard/generated.d.ts.map +1 -1
  53. package/dist/elasticsearch/generated.d.ts +22 -22
  54. package/dist/elasticsearch/generated.d.ts.map +1 -1
  55. package/dist/enrollments/generated.d.ts +22 -22
  56. package/dist/enrollments/generated.d.ts.map +1 -1
  57. package/dist/errors/generated.d.ts +51 -51
  58. package/dist/errors/generated.d.ts.map +1 -1
  59. package/dist/eventconfig/generated.d.ts +113 -113
  60. package/dist/eventconfig/generated.d.ts.map +1 -1
  61. package/dist/funnels/generated.d.ts +124 -124
  62. package/dist/funnels/generated.d.ts.map +1 -1
  63. package/dist/gamification/generated.d.ts +194 -194
  64. package/dist/gamification/generated.d.ts.map +1 -1
  65. package/dist/impersonation/generated.d.ts +35 -35
  66. package/dist/impersonation/generated.d.ts.map +1 -1
  67. package/dist/inbox/generated.d.ts +138 -138
  68. package/dist/inbox/generated.d.ts.map +1 -1
  69. package/dist/internal/generated.d.ts +22 -22
  70. package/dist/internal/generated.d.ts.map +1 -1
  71. package/dist/internationalization/generated.d.ts +22 -22
  72. package/dist/internationalization/generated.d.ts.map +1 -1
  73. package/dist/invitations/generated.d.ts +111 -111
  74. package/dist/invitations/generated.d.ts.map +1 -1
  75. package/dist/meetings/generated.d.ts +323 -323
  76. package/dist/meetings/generated.d.ts.map +1 -1
  77. package/dist/metas/generated.d.ts +160 -160
  78. package/dist/metas/generated.d.ts.map +1 -1
  79. package/dist/notification/generated.d.ts +246 -246
  80. package/dist/notification/generated.d.ts.map +1 -1
  81. package/dist/notifications/generated.d.ts +22 -22
  82. package/dist/notifications/generated.d.ts.map +1 -1
  83. package/dist/onboarding/generated.d.ts +118 -118
  84. package/dist/onboarding/generated.d.ts.map +1 -1
  85. package/dist/packages/generated.d.ts +80 -80
  86. package/dist/packages/generated.d.ts.map +1 -1
  87. package/dist/payments/generated.d.ts +557 -557
  88. package/dist/payments/generated.d.ts.map +1 -1
  89. package/dist/payouts/generated.d.ts +22 -22
  90. package/dist/payouts/generated.d.ts.map +1 -1
  91. package/dist/plans/generated.d.ts +472 -472
  92. package/dist/plans/generated.d.ts.map +1 -1
  93. package/dist/pricing/generated.d.ts +100 -100
  94. package/dist/pricing/generated.d.ts.map +1 -1
  95. package/dist/products/generated.d.ts +617 -617
  96. package/dist/products/generated.d.ts.map +1 -1
  97. package/dist/profile/generated.d.ts +328 -328
  98. package/dist/profile/generated.d.ts.map +1 -1
  99. package/dist/reasons/generated.d.ts +97 -97
  100. package/dist/reasons/generated.d.ts.map +1 -1
  101. package/dist/registration/generated.d.ts +184 -184
  102. package/dist/registration/generated.d.ts.map +1 -1
  103. package/dist/reviews/generated.d.ts +69 -69
  104. package/dist/reviews/generated.d.ts.map +1 -1
  105. package/dist/role/generated.d.ts +210 -210
  106. package/dist/role/generated.d.ts.map +1 -1
  107. package/dist/scheduling/generated.d.ts +80 -80
  108. package/dist/scheduling/generated.d.ts.map +1 -1
  109. package/dist/services/generated.d.ts +937 -937
  110. package/dist/services/generated.d.ts.map +1 -1
  111. package/dist/sessions/generated.d.ts +363 -363
  112. package/dist/sessions/generated.d.ts.map +1 -1
  113. package/dist/spaces/generated.d.ts +403 -403
  114. package/dist/spaces/generated.d.ts.map +1 -1
  115. package/dist/storefront/generated.d.ts +22 -22
  116. package/dist/storefront/generated.d.ts.map +1 -1
  117. package/dist/support/generated.d.ts +1440 -1440
  118. package/dist/support/generated.d.ts.map +1 -1
  119. package/dist/sync/generated.d.ts +193 -193
  120. package/dist/sync/generated.d.ts.map +1 -1
  121. package/dist/tenant/generated.d.ts +482 -482
  122. package/dist/tenant/generated.d.ts.map +1 -1
  123. package/dist/testimonials/generated.d.ts +65 -65
  124. package/dist/testimonials/generated.d.ts.map +1 -1
  125. package/dist/tests/generated.d.ts +445 -445
  126. package/dist/tests/generated.d.ts.map +1 -1
  127. package/dist/tokens/generated.d.ts +39 -39
  128. package/dist/tokens/generated.d.ts.map +1 -1
  129. package/dist/uploads/generated.d.ts +20 -20
  130. package/dist/uploads/generated.d.ts.map +1 -1
  131. package/dist/upsell/generated.d.ts +108 -108
  132. package/dist/upsell/generated.d.ts.map +1 -1
  133. package/dist/user/generated.d.ts +107 -107
  134. package/dist/user/generated.d.ts.map +1 -1
  135. package/dist/webinars/generated.d.ts +308 -308
  136. package/dist/webinars/generated.d.ts.map +1 -1
  137. package/package.json +1 -1
@@ -225,168 +225,238 @@ export type webhooks = Record<string, never>;
225
225
  export interface components {
226
226
  schemas: {
227
227
  /**
228
- * @example {
229
- * "status": "success",
230
- * "message": "Operation successful",
231
- * "message_code": "api_suc_20001",
232
- * "data": {},
233
- * "metadata": {
234
- * "timestamp": "2026-03-26T10:00:00.000Z",
235
- * "requestId": "07e22004-cb60-4dfc-bc9c-b6f99664dca1",
236
- * "traceId": "a9f1204c-bb82-41de-b234-7c3a9e120000",
237
- * "version": "v1",
238
- * "executionTime": 42,
239
- * "language": "en-US"
240
- * }
241
- * }
228
+ * PricingSection
229
+ * @description Pricing configuration (optional - can have product price, variant prices, or both)
242
230
  */
243
- StandardResponse: {
244
- /** @example success */
245
- status?: string;
246
- data?: Record<string, never> | null;
247
- /** @example Operation successful */
248
- message?: string | null;
249
- /** @example api_suc_20001 */
250
- message_code?: string | null;
251
- metadata?: Record<string, never> | null;
252
- error?: components["schemas"]["ErrorResponse"];
231
+ PricingSection: {
232
+ /** @description Base product price (no variant) */
233
+ product_price?: components["schemas"]["ProductPrice"] | null;
234
+ /**
235
+ * Variant Prices
236
+ * @description Variant-specific prices
237
+ */
238
+ variant_prices?: components["schemas"]["VariantPrice"][] | null;
253
239
  };
254
240
  /**
255
- * TenantPlanCreateRequest
256
- * @description Tenant Plan creation request - inherits common fields, adds plan-specific sections
257
- * @example {
258
- * "features": {
259
- * "collections": {
260
- * "enabled": true,
261
- * "max_collections": 50
262
- * },
263
- * "corporate_products": {
264
- * "enabled": true
265
- * },
266
- * "multilingual": {
267
- * "enabled": true,
268
- * "languages": [
269
- * "en-US",
270
- * "es-ES",
271
- * "fr-FR"
272
- * ]
273
- * },
274
- * "products": [
275
- * "session",
276
- * "webinar",
277
- * "meeting"
278
- * ]
279
- * },
280
- * "identity": {
281
- * "description": "Comprehensive features for professional use with advanced virtual classroom capabilities...",
282
- * "locale": "en-US",
283
- * "short_description": "Professional tier with advanced features",
284
- * "subtitle": "Perfect for growing teams",
285
- * "title": "Professional Plan"
286
- * },
287
- * "media": {
288
- * "media_items": [
289
- * {
290
- * "alt_text": "Professional Plan Logo",
291
- * "file_name": "logo.png",
292
- * "file_path": "/plans/123/logo.png",
293
- * "is_primary": true,
294
- * "media_type": "logo",
295
- * "mime_type": "image/png"
296
- * }
297
- * ]
298
- * },
299
- * "plan": {
300
- * "active_user_limit": 50,
301
- * "attendee_limit": 100,
302
- * "bandwidth_gb_per_month": 500,
303
- * "class_duration_minutes": 120,
304
- * "concurrent_rooms": 10,
305
- * "is_standard": false,
306
- * "status": "active",
307
- * "storage_limit_gb": 100,
308
- * "virtual_classroom_enabled": true
309
- * },
310
- * "pricing": {
311
- * "product_price": {
312
- * "amount": 99,
313
- * "currency": "USD",
314
- * "interval": "month",
315
- * "price_type": "recurring"
316
- * },
317
- * "variant_prices": [
318
- * {
319
- * "amount": 99,
320
- * "currency": "USD",
321
- * "interval": "month",
322
- * "price_type": "recurring",
323
- * "variant_index": 0
324
- * },
325
- * {
326
- * "amount": 950,
327
- * "currency": "USD",
328
- * "interval": "year",
329
- * "price_type": "recurring",
330
- * "variant_index": 1
331
- * }
332
- * ]
333
- * },
334
- * "product": {
335
- * "company_id": 2,
336
- * "featured": false,
337
- * "is_digital": true,
338
- * "is_org_level": true,
339
- * "status": "active",
340
- * "visibility": "public"
341
- * },
342
- * "tags": [
343
- * 1,
344
- * 5,
345
- * 8
346
- * ],
347
- * "variants": [
348
- * {
349
- * "attributes": {
350
- * "billing_cycle": "monthly"
351
- * },
352
- * "is_default": true,
353
- * "name": "Monthly",
354
- * "sku": "PROF-MONTHLY"
355
- * },
356
- * {
357
- * "attributes": {
358
- * "billing_cycle": "annual",
359
- * "discount": "20%"
360
- * },
361
- * "name": "Annual",
362
- * "sku": "PROF-ANNUAL"
363
- * }
364
- * ]
365
- * }
241
+ * MediaSection
242
+ * @description Product media files - direct media data
366
243
  */
367
- TenantPlanCreateRequest: {
368
- /** @description Base product configuration */
369
- product: components["schemas"]["ProductSection"];
370
- /** @description Localized content (title, description) */
371
- identity: components["schemas"]["IdentitySection"];
372
- /** @description Pre-uploaded image IDs */
373
- media?: components["schemas"]["MediaSection"] | null;
244
+ MediaSection: {
374
245
  /**
375
- * Tags
376
- * @description Tag IDs to associate with product
246
+ * Media Items
247
+ * @description List of media files to attach to product
377
248
  */
378
- tags?: number[] | null;
249
+ media_items?: components["schemas"]["MediaItem"][] | null;
250
+ };
251
+ /**
252
+ * ProductSection
253
+ * @description Base product fields (maps to product_tbl)
254
+ */
255
+ ProductSection: {
379
256
  /**
380
- * Variants
381
- * @description Product variants (optional)
257
+ * Visibility
258
+ * @description public, private, hidden, unlisted
259
+ * @default public
382
260
  */
383
- variants?: components["schemas"]["VariantItem"][] | null;
384
- /** @description Pricing for product and variants */
385
- pricing?: components["schemas"]["PricingSection"] | null;
386
- /** @description Tenant plan configuration and limits */
387
- plan: components["schemas"]["TenantPlanSection"];
388
- /** @description Optional plan features and add-ons */
389
- features?: components["schemas"]["TenantPlanFeaturesSection"] | null;
261
+ visibility: string;
262
+ /**
263
+ * Is Digital
264
+ * @description Digital product flag
265
+ * @default true
266
+ */
267
+ is_digital: boolean;
268
+ /**
269
+ * Company Id
270
+ * @description Multi-company support
271
+ */
272
+ company_id?: number | null;
273
+ /**
274
+ * Status
275
+ * @description draft, published, archived, review_required, deleted
276
+ * @default draft
277
+ */
278
+ status: string;
279
+ /**
280
+ * Is Org Level
281
+ * @description Org-level vs user-created product
282
+ * @default true
283
+ */
284
+ is_org_level: boolean;
285
+ /**
286
+ * Staff Id
287
+ * @description Staff/instructor delivering product
288
+ */
289
+ staff_id?: number | null;
290
+ /**
291
+ * Owner Id
292
+ * @description Owner of the product
293
+ */
294
+ owner_id?: number | null;
295
+ /**
296
+ * Featured
297
+ * @description Featured product flag
298
+ * @default false
299
+ */
300
+ featured: boolean;
301
+ };
302
+ ErrorResponse: {
303
+ /** @example about:blank */
304
+ type?: string;
305
+ /** @example GENERIC_ERROR */
306
+ code?: string;
307
+ /** @example Client Error */
308
+ title?: string;
309
+ /** @example 400 */
310
+ status?: number;
311
+ /** @example An error occurred */
312
+ detail?: string;
313
+ /** @example /v1/cart/items */
314
+ instance?: string;
315
+ extensions?: components["schemas"]["Extensions"];
316
+ };
317
+ /**
318
+ * MediaItem
319
+ * @description Single media file item
320
+ */
321
+ MediaItem: {
322
+ /**
323
+ * Media Type
324
+ * @description logo, banner, promo_video, gallery_image, gallery_video, swatch
325
+ */
326
+ media_type: string;
327
+ /**
328
+ * File Path
329
+ * @description Path to media file on storage (S3, CDN, local)
330
+ */
331
+ file_path: string;
332
+ /**
333
+ * File Name
334
+ * @description Original filename
335
+ */
336
+ file_name: string;
337
+ /**
338
+ * File Size
339
+ * @description File size in bytes
340
+ */
341
+ file_size?: number | null;
342
+ /**
343
+ * Mime Type
344
+ * @description MIME type (image/png, video/mp4, etc.)
345
+ */
346
+ mime_type?: string | null;
347
+ /**
348
+ * Width
349
+ * @description Width in pixels (for images/videos)
350
+ */
351
+ width?: number | null;
352
+ /**
353
+ * Height
354
+ * @description Height in pixels (for images/videos)
355
+ */
356
+ height?: number | null;
357
+ /**
358
+ * Responsive Versions
359
+ * @description JSON with thumbnail, small, medium, large, xlarge, original paths
360
+ */
361
+ responsive_versions?: {
362
+ [key: string]: string;
363
+ } | null;
364
+ /**
365
+ * Alt Text
366
+ * @description Alt text for SEO/accessibility
367
+ */
368
+ alt_text?: string | null;
369
+ /**
370
+ * Locale
371
+ * @description Media locale (en-US, es-PR, etc.)
372
+ * @default en-US
373
+ */
374
+ locale: string;
375
+ /**
376
+ * Display Order
377
+ * @description Display order
378
+ * @default 0
379
+ */
380
+ display_order: number;
381
+ /**
382
+ * Is Primary
383
+ * @description Mark as primary media
384
+ * @default false
385
+ */
386
+ is_primary: boolean;
387
+ };
388
+ Extensions: {
389
+ /** @example GENERIC_ERROR */
390
+ message_code?: string;
391
+ /** @example [] */
392
+ invalid_params?: components["schemas"]["InvalidParam"][];
393
+ extra_data?: Record<string, never> | null;
394
+ /** @example Detailed debug information */
395
+ debug?: string | null;
396
+ };
397
+ /**
398
+ * TenantPlanSection
399
+ * @description Tenant Plan-specific fields (maps to tenant_plans_tbl)
400
+ */
401
+ TenantPlanSection: {
402
+ /**
403
+ * Is Standard
404
+ * @description Is this a standard/free plan
405
+ * @default false
406
+ */
407
+ is_standard: boolean;
408
+ /**
409
+ * Premium Plan Id
410
+ * @description Reference to premium upgrade plan (internal ID)
411
+ */
412
+ premium_plan_id?: number | null;
413
+ /**
414
+ * For Org Id
415
+ * @description Specific org this plan is for (NULL = available to all)
416
+ */
417
+ for_org_id?: number | null;
418
+ /**
419
+ * Concurrent Rooms
420
+ * @description Max concurrent virtual rooms allowed
421
+ */
422
+ concurrent_rooms?: number | null;
423
+ /**
424
+ * Class Duration Minutes
425
+ * @description Max class duration in minutes
426
+ */
427
+ class_duration_minutes?: number | null;
428
+ /**
429
+ * Attendee Limit
430
+ * @description Max attendees per session
431
+ */
432
+ attendee_limit?: number | null;
433
+ /**
434
+ * Virtual Classroom Enabled
435
+ * @description Enable virtual classroom features
436
+ * @default true
437
+ */
438
+ virtual_classroom_enabled: boolean;
439
+ /**
440
+ * Active User Limit
441
+ * @description Max active users allowed
442
+ */
443
+ active_user_limit?: number | null;
444
+ /**
445
+ * Storage Limit Gb
446
+ * @description Storage limit in GB
447
+ */
448
+ storage_limit_gb?: number | null;
449
+ /**
450
+ * Bandwidth Gb Per Month
451
+ * @description Monthly bandwidth limit in GB
452
+ */
453
+ bandwidth_gb_per_month?: number | null;
454
+ /**
455
+ * Status
456
+ * @description active, inactive, archived, deleted
457
+ * @default active
458
+ */
459
+ status: string;
390
460
  };
391
461
  /**
392
462
  * VariantItem
@@ -463,77 +533,20 @@ export interface components {
463
533
  * Metadata
464
534
  * @description Flexible metadata
465
535
  */
466
- metadata?: {
467
- [key: string]: unknown;
468
- } | null;
469
- };
470
- /**
471
- * TenantPlanFeaturesSection
472
- * @description Tenant Plan Features - Optional add-ons (maps to tenant_plan_features_tbl)
473
- */
474
- TenantPlanFeaturesSection: {
475
- /**
476
- * Products
477
- * @description Enabled product types: ["session", "webinar", "meeting"]
478
- */
479
- products?: string[] | null;
480
- /**
481
- * Corporate Products
482
- * @description Corporate product settings
483
- */
484
- corporate_products?: {
485
- [key: string]: unknown;
486
- } | null;
487
- /**
488
- * Collections
489
- * @description Enabled collection features
490
- */
491
- collections?: {
492
- [key: string]: unknown;
493
- } | null;
494
- /**
495
- * Corporate Collections
496
- * @description Corporate collection settings
497
- */
498
- corporate_collections?: {
499
- [key: string]: unknown;
500
- } | null;
501
- /**
502
- * Multilingual
503
- * @description Multilingual settings: {"enabled": true, "languages": ["en-US", "es-ES"]}
504
- */
505
- multilingual?: {
506
- [key: string]: unknown;
507
- } | null;
508
- /**
509
- * Corporate Multilingual
510
- * @description Corporate multilingual settings
511
- */
512
- corporate_multilingual?: {
513
- [key: string]: unknown;
514
- } | null;
515
- /**
516
- * Custom Features
517
- * @description Additional custom features
518
- */
519
- custom_features?: {
536
+ metadata?: {
520
537
  [key: string]: unknown;
521
538
  } | null;
522
539
  };
523
- Extensions: {
524
- /** @example GENERIC_ERROR */
525
- message_code?: string;
526
- /** @example [] */
527
- invalid_params?: components["schemas"]["InvalidParam"][];
528
- extra_data?: Record<string, never> | null;
529
- /** @example Detailed debug information */
530
- debug?: string | null;
531
- };
532
540
  /**
533
- * ProductPrice
534
- * @description Base product pricing (maps to product_pricings_tbl with variant_id=NULL)
541
+ * VariantPrice
542
+ * @description Variant-specific pricing (maps to product_pricings_tbl with variant_id set)
535
543
  */
536
- ProductPrice: {
544
+ VariantPrice: {
545
+ /**
546
+ * Variant Index
547
+ * @description Index in variants array (0-based)
548
+ */
549
+ variant_index: number;
537
550
  /**
538
551
  * Price Type
539
552
  * @description free, one_time, subscription, monthly_plan
@@ -541,7 +554,7 @@ export interface components {
541
554
  price_type: string;
542
555
  /**
543
556
  * Currency
544
- * @description Currency code: INR, USD, EUR, etc.
557
+ * @description Currency code
545
558
  */
546
559
  currency: string;
547
560
  /**
@@ -556,7 +569,7 @@ export interface components {
556
569
  compare_at_amount?: number | null;
557
570
  /**
558
571
  * Interval
559
- * @description day, week, month, year (for subscription)
572
+ * @description day, week, month, year
560
573
  */
561
574
  interval?: string | null;
562
575
  /**
@@ -587,124 +600,10 @@ export interface components {
587
600
  requires_payment_method_upfront: boolean;
588
601
  };
589
602
  /**
590
- * IdentitySection
591
- * @description Localized product content (maps to product_identity_tbl)
592
- */
593
- IdentitySection: {
594
- /**
595
- * Locale
596
- * @description Locale: en-US, es-PR, fr-FR, pt-BR, etc.
597
- * @default en-US
598
- */
599
- locale: string;
600
- /**
601
- * Title
602
- * @description Product title
603
- */
604
- title: string;
605
- /**
606
- * Subtitle
607
- * @description Product subtitle
608
- */
609
- subtitle?: string | null;
610
- /**
611
- * Description
612
- * @description Full product description
613
- */
614
- description?: string | null;
615
- /**
616
- * Short Description
617
- * @description Short description for listings/previews
618
- */
619
- short_description?: string | null;
620
- };
621
- /**
622
- * MediaItem
623
- * @description Single media file item
624
- */
625
- MediaItem: {
626
- /**
627
- * Media Type
628
- * @description logo, banner, promo_video, gallery_image, gallery_video, swatch
629
- */
630
- media_type: string;
631
- /**
632
- * File Path
633
- * @description Path to media file on storage (S3, CDN, local)
634
- */
635
- file_path: string;
636
- /**
637
- * File Name
638
- * @description Original filename
639
- */
640
- file_name: string;
641
- /**
642
- * File Size
643
- * @description File size in bytes
644
- */
645
- file_size?: number | null;
646
- /**
647
- * Mime Type
648
- * @description MIME type (image/png, video/mp4, etc.)
649
- */
650
- mime_type?: string | null;
651
- /**
652
- * Width
653
- * @description Width in pixels (for images/videos)
654
- */
655
- width?: number | null;
656
- /**
657
- * Height
658
- * @description Height in pixels (for images/videos)
659
- */
660
- height?: number | null;
661
- /**
662
- * Responsive Versions
663
- * @description JSON with thumbnail, small, medium, large, xlarge, original paths
664
- */
665
- responsive_versions?: {
666
- [key: string]: string;
667
- } | null;
668
- /**
669
- * Alt Text
670
- * @description Alt text for SEO/accessibility
671
- */
672
- alt_text?: string | null;
673
- /**
674
- * Locale
675
- * @description Media locale (en-US, es-PR, etc.)
676
- * @default en-US
677
- */
678
- locale: string;
679
- /**
680
- * Display Order
681
- * @description Display order
682
- * @default 0
683
- */
684
- display_order: number;
685
- /**
686
- * Is Primary
687
- * @description Mark as primary media
688
- * @default false
689
- */
690
- is_primary: boolean;
691
- };
692
- InvalidParam: {
693
- /** @example items[0].quantity */
694
- field?: string;
695
- /** @example Input should be greater than or equal to 1 */
696
- error?: string;
697
- };
698
- /**
699
- * VariantPrice
700
- * @description Variant-specific pricing (maps to product_pricings_tbl with variant_id set)
603
+ * ProductPrice
604
+ * @description Base product pricing (maps to product_pricings_tbl with variant_id=NULL)
701
605
  */
702
- VariantPrice: {
703
- /**
704
- * Variant Index
705
- * @description Index in variants array (0-based)
706
- */
707
- variant_index: number;
606
+ ProductPrice: {
708
607
  /**
709
608
  * Price Type
710
609
  * @description free, one_time, subscription, monthly_plan
@@ -712,7 +611,7 @@ export interface components {
712
611
  price_type: string;
713
612
  /**
714
613
  * Currency
715
- * @description Currency code
614
+ * @description Currency code: INR, USD, EUR, etc.
716
615
  */
717
616
  currency: string;
718
617
  /**
@@ -727,7 +626,7 @@ export interface components {
727
626
  compare_at_amount?: number | null;
728
627
  /**
729
628
  * Interval
730
- * @description day, week, month, year
629
+ * @description day, week, month, year (for subscription)
731
630
  */
732
631
  interval?: string | null;
733
632
  /**
@@ -746,170 +645,271 @@ export interface components {
746
645
  */
747
646
  initial_amount?: number | null;
748
647
  /**
749
- * Gateway
750
- * @description stripe, razorpay, paypal, etc.
648
+ * Gateway
649
+ * @description stripe, razorpay, paypal, etc.
650
+ */
651
+ gateway?: string | null;
652
+ /**
653
+ * Requires Payment Method Upfront
654
+ * @description Require payment method before trial
655
+ * @default true
656
+ */
657
+ requires_payment_method_upfront: boolean;
658
+ };
659
+ InvalidParam: {
660
+ /** @example items[0].quantity */
661
+ field?: string;
662
+ /** @example Input should be greater than or equal to 1 */
663
+ error?: string;
664
+ };
665
+ /**
666
+ * TenantPlanCreateRequest
667
+ * @description Tenant Plan creation request - inherits common fields, adds plan-specific sections
668
+ * @example {
669
+ * "features": {
670
+ * "collections": {
671
+ * "enabled": true,
672
+ * "max_collections": 50
673
+ * },
674
+ * "corporate_products": {
675
+ * "enabled": true
676
+ * },
677
+ * "multilingual": {
678
+ * "enabled": true,
679
+ * "languages": [
680
+ * "en-US",
681
+ * "es-ES",
682
+ * "fr-FR"
683
+ * ]
684
+ * },
685
+ * "products": [
686
+ * "session",
687
+ * "webinar",
688
+ * "meeting"
689
+ * ]
690
+ * },
691
+ * "identity": {
692
+ * "description": "Comprehensive features for professional use with advanced virtual classroom capabilities...",
693
+ * "locale": "en-US",
694
+ * "short_description": "Professional tier with advanced features",
695
+ * "subtitle": "Perfect for growing teams",
696
+ * "title": "Professional Plan"
697
+ * },
698
+ * "media": {
699
+ * "media_items": [
700
+ * {
701
+ * "alt_text": "Professional Plan Logo",
702
+ * "file_name": "logo.png",
703
+ * "file_path": "/plans/123/logo.png",
704
+ * "is_primary": true,
705
+ * "media_type": "logo",
706
+ * "mime_type": "image/png"
707
+ * }
708
+ * ]
709
+ * },
710
+ * "plan": {
711
+ * "active_user_limit": 50,
712
+ * "attendee_limit": 100,
713
+ * "bandwidth_gb_per_month": 500,
714
+ * "class_duration_minutes": 120,
715
+ * "concurrent_rooms": 10,
716
+ * "is_standard": false,
717
+ * "status": "active",
718
+ * "storage_limit_gb": 100,
719
+ * "virtual_classroom_enabled": true
720
+ * },
721
+ * "pricing": {
722
+ * "product_price": {
723
+ * "amount": 99,
724
+ * "currency": "USD",
725
+ * "interval": "month",
726
+ * "price_type": "recurring"
727
+ * },
728
+ * "variant_prices": [
729
+ * {
730
+ * "amount": 99,
731
+ * "currency": "USD",
732
+ * "interval": "month",
733
+ * "price_type": "recurring",
734
+ * "variant_index": 0
735
+ * },
736
+ * {
737
+ * "amount": 950,
738
+ * "currency": "USD",
739
+ * "interval": "year",
740
+ * "price_type": "recurring",
741
+ * "variant_index": 1
742
+ * }
743
+ * ]
744
+ * },
745
+ * "product": {
746
+ * "company_id": 2,
747
+ * "featured": false,
748
+ * "is_digital": true,
749
+ * "is_org_level": true,
750
+ * "status": "active",
751
+ * "visibility": "public"
752
+ * },
753
+ * "tags": [
754
+ * 1,
755
+ * 5,
756
+ * 8
757
+ * ],
758
+ * "variants": [
759
+ * {
760
+ * "attributes": {
761
+ * "billing_cycle": "monthly"
762
+ * },
763
+ * "is_default": true,
764
+ * "name": "Monthly",
765
+ * "sku": "PROF-MONTHLY"
766
+ * },
767
+ * {
768
+ * "attributes": {
769
+ * "billing_cycle": "annual",
770
+ * "discount": "20%"
771
+ * },
772
+ * "name": "Annual",
773
+ * "sku": "PROF-ANNUAL"
774
+ * }
775
+ * ]
776
+ * }
777
+ */
778
+ TenantPlanCreateRequest: {
779
+ /** @description Base product configuration */
780
+ product: components["schemas"]["ProductSection"];
781
+ /** @description Localized content (title, description) */
782
+ identity: components["schemas"]["IdentitySection"];
783
+ /** @description Pre-uploaded image IDs */
784
+ media?: components["schemas"]["MediaSection"] | null;
785
+ /**
786
+ * Tags
787
+ * @description Tag IDs to associate with product
751
788
  */
752
- gateway?: string | null;
789
+ tags?: number[] | null;
753
790
  /**
754
- * Requires Payment Method Upfront
755
- * @description Require payment method before trial
756
- * @default true
791
+ * Variants
792
+ * @description Product variants (optional)
757
793
  */
758
- requires_payment_method_upfront: boolean;
794
+ variants?: components["schemas"]["VariantItem"][] | null;
795
+ /** @description Pricing for product and variants */
796
+ pricing?: components["schemas"]["PricingSection"] | null;
797
+ /** @description Tenant plan configuration and limits */
798
+ plan: components["schemas"]["TenantPlanSection"];
799
+ /** @description Optional plan features and add-ons */
800
+ features?: components["schemas"]["TenantPlanFeaturesSection"] | null;
759
801
  };
760
802
  /**
761
- * TenantPlanSection
762
- * @description Tenant Plan-specific fields (maps to tenant_plans_tbl)
803
+ * TenantPlanFeaturesSection
804
+ * @description Tenant Plan Features - Optional add-ons (maps to tenant_plan_features_tbl)
763
805
  */
764
- TenantPlanSection: {
765
- /**
766
- * Is Standard
767
- * @description Is this a standard/free plan
768
- * @default false
769
- */
770
- is_standard: boolean;
771
- /**
772
- * Premium Plan Id
773
- * @description Reference to premium upgrade plan (internal ID)
774
- */
775
- premium_plan_id?: number | null;
776
- /**
777
- * For Org Id
778
- * @description Specific org this plan is for (NULL = available to all)
779
- */
780
- for_org_id?: number | null;
781
- /**
782
- * Concurrent Rooms
783
- * @description Max concurrent virtual rooms allowed
784
- */
785
- concurrent_rooms?: number | null;
806
+ TenantPlanFeaturesSection: {
786
807
  /**
787
- * Class Duration Minutes
788
- * @description Max class duration in minutes
808
+ * Products
809
+ * @description Enabled product types: ["session", "webinar", "meeting"]
789
810
  */
790
- class_duration_minutes?: number | null;
811
+ products?: string[] | null;
791
812
  /**
792
- * Attendee Limit
793
- * @description Max attendees per session
813
+ * Corporate Products
814
+ * @description Corporate product settings
794
815
  */
795
- attendee_limit?: number | null;
816
+ corporate_products?: {
817
+ [key: string]: unknown;
818
+ } | null;
796
819
  /**
797
- * Virtual Classroom Enabled
798
- * @description Enable virtual classroom features
799
- * @default true
820
+ * Collections
821
+ * @description Enabled collection features
800
822
  */
801
- virtual_classroom_enabled: boolean;
823
+ collections?: {
824
+ [key: string]: unknown;
825
+ } | null;
802
826
  /**
803
- * Active User Limit
804
- * @description Max active users allowed
827
+ * Corporate Collections
828
+ * @description Corporate collection settings
805
829
  */
806
- active_user_limit?: number | null;
830
+ corporate_collections?: {
831
+ [key: string]: unknown;
832
+ } | null;
807
833
  /**
808
- * Storage Limit Gb
809
- * @description Storage limit in GB
834
+ * Multilingual
835
+ * @description Multilingual settings: {"enabled": true, "languages": ["en-US", "es-ES"]}
810
836
  */
811
- storage_limit_gb?: number | null;
837
+ multilingual?: {
838
+ [key: string]: unknown;
839
+ } | null;
812
840
  /**
813
- * Bandwidth Gb Per Month
814
- * @description Monthly bandwidth limit in GB
841
+ * Corporate Multilingual
842
+ * @description Corporate multilingual settings
815
843
  */
816
- bandwidth_gb_per_month?: number | null;
844
+ corporate_multilingual?: {
845
+ [key: string]: unknown;
846
+ } | null;
817
847
  /**
818
- * Status
819
- * @description active, inactive, archived, deleted
820
- * @default active
848
+ * Custom Features
849
+ * @description Additional custom features
821
850
  */
822
- status: string;
851
+ custom_features?: {
852
+ [key: string]: unknown;
853
+ } | null;
823
854
  };
824
855
  /**
825
- * ProductSection
826
- * @description Base product fields (maps to product_tbl)
856
+ * @example {
857
+ * "status": "success",
858
+ * "message": "Operation successful",
859
+ * "message_code": "api_suc_20001",
860
+ * "data": {},
861
+ * "metadata": {
862
+ * "timestamp": "2026-03-26T10:00:00.000Z",
863
+ * "requestId": "07e22004-cb60-4dfc-bc9c-b6f99664dca1",
864
+ * "traceId": "a9f1204c-bb82-41de-b234-7c3a9e120000",
865
+ * "version": "v1",
866
+ * "executionTime": 42,
867
+ * "language": "en-US"
868
+ * }
869
+ * }
827
870
  */
828
- ProductSection: {
829
- /**
830
- * Visibility
831
- * @description public, private, hidden, unlisted
832
- * @default public
833
- */
834
- visibility: string;
835
- /**
836
- * Is Digital
837
- * @description Digital product flag
838
- * @default true
839
- */
840
- is_digital: boolean;
841
- /**
842
- * Company Id
843
- * @description Multi-company support
844
- */
845
- company_id?: number | null;
846
- /**
847
- * Status
848
- * @description draft, published, archived, review_required, deleted
849
- * @default draft
850
- */
851
- status: string;
852
- /**
853
- * Is Org Level
854
- * @description Org-level vs user-created product
855
- * @default true
856
- */
857
- is_org_level: boolean;
871
+ StandardResponse: {
872
+ /** @example success */
873
+ status?: string;
874
+ data?: Record<string, never> | null;
875
+ /** @example Operation successful */
876
+ message?: string | null;
877
+ /** @example api_suc_20001 */
878
+ message_code?: string | null;
879
+ metadata?: Record<string, never> | null;
880
+ error?: components["schemas"]["ErrorResponse"];
881
+ };
882
+ /**
883
+ * IdentitySection
884
+ * @description Localized product content (maps to product_identity_tbl)
885
+ */
886
+ IdentitySection: {
858
887
  /**
859
- * Staff Id
860
- * @description Staff/instructor delivering product
888
+ * Locale
889
+ * @description Locale: en-US, es-PR, fr-FR, pt-BR, etc.
890
+ * @default en-US
861
891
  */
862
- staff_id?: number | null;
892
+ locale: string;
863
893
  /**
864
- * Owner Id
865
- * @description Owner of the product
894
+ * Title
895
+ * @description Product title
866
896
  */
867
- owner_id?: number | null;
897
+ title: string;
868
898
  /**
869
- * Featured
870
- * @description Featured product flag
871
- * @default false
899
+ * Subtitle
900
+ * @description Product subtitle
872
901
  */
873
- featured: boolean;
874
- };
875
- ErrorResponse: {
876
- /** @example about:blank */
877
- type?: string;
878
- /** @example GENERIC_ERROR */
879
- code?: string;
880
- /** @example Client Error */
881
- title?: string;
882
- /** @example 400 */
883
- status?: number;
884
- /** @example An error occurred */
885
- detail?: string;
886
- /** @example /v1/cart/items */
887
- instance?: string;
888
- extensions?: components["schemas"]["Extensions"];
889
- };
890
- /**
891
- * MediaSection
892
- * @description Product media files - direct media data
893
- */
894
- MediaSection: {
902
+ subtitle?: string | null;
895
903
  /**
896
- * Media Items
897
- * @description List of media files to attach to product
904
+ * Description
905
+ * @description Full product description
898
906
  */
899
- media_items?: components["schemas"]["MediaItem"][] | null;
900
- };
901
- /**
902
- * PricingSection
903
- * @description Pricing configuration (optional - can have product price, variant prices, or both)
904
- */
905
- PricingSection: {
906
- /** @description Base product price (no variant) */
907
- product_price?: components["schemas"]["ProductPrice"] | null;
907
+ description?: string | null;
908
908
  /**
909
- * Variant Prices
910
- * @description Variant-specific prices
909
+ * Short Description
910
+ * @description Short description for listings/previews
911
911
  */
912
- variant_prices?: components["schemas"]["VariantPrice"][] | null;
912
+ short_description?: string | null;
913
913
  };
914
914
  };
915
915
  responses: never;