@blezgo/api-sdk 0.1.3 → 0.1.4

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