@blezgo/api-sdk 0.1.3 → 0.1.5

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 +153 -153
  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 +104 -104
  6. package/dist/addon/generated.d.ts.map +1 -1
  7. package/dist/admin/generated.d.ts +85 -85
  8. package/dist/admin/generated.d.ts.map +1 -1
  9. package/dist/affiliate/generated.d.ts +89 -89
  10. package/dist/affiliate/generated.d.ts.map +1 -1
  11. package/dist/analytics/generated.d.ts +15 -15
  12. package/dist/analytics/generated.d.ts.map +1 -1
  13. package/dist/announcements/generated.d.ts +52 -52
  14. package/dist/announcements/generated.d.ts.map +1 -1
  15. package/dist/apikeys/generated.d.ts +43 -43
  16. package/dist/apikeys/generated.d.ts.map +1 -1
  17. package/dist/assistance/generated.d.ts +15 -15
  18. package/dist/assistance/generated.d.ts.map +1 -1
  19. package/dist/authentication/generated.d.ts +116 -116
  20. package/dist/authentication/generated.d.ts.map +1 -1
  21. package/dist/blog/generated.d.ts +168 -168
  22. package/dist/blog/generated.d.ts.map +1 -1
  23. package/dist/bundle/generated.d.ts +116 -116
  24. package/dist/bundle/generated.d.ts.map +1 -1
  25. package/dist/cache/generated.d.ts +30 -30
  26. package/dist/cache/generated.d.ts.map +1 -1
  27. package/dist/calendar/generated.d.ts +37 -37
  28. package/dist/calendar/generated.d.ts.map +1 -1
  29. package/dist/campaigns/generated.d.ts +157 -157
  30. package/dist/campaigns/generated.d.ts.map +1 -1
  31. package/dist/cart/generated.d.ts +30 -30
  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 +231 -231
  36. package/dist/channel/generated.d.ts.map +1 -1
  37. package/dist/company/generated.d.ts +44 -44
  38. package/dist/company/generated.d.ts.map +1 -1
  39. package/dist/conference/generated.d.ts +14 -14
  40. package/dist/conference/generated.d.ts.map +1 -1
  41. package/dist/config/generated.d.ts +60 -60
  42. package/dist/config/generated.d.ts.map +1 -1
  43. package/dist/content/generated.d.ts +527 -527
  44. package/dist/content/generated.d.ts.map +1 -1
  45. package/dist/cookies/generated.d.ts +60 -60
  46. package/dist/cookies/generated.d.ts.map +1 -1
  47. package/dist/courses/generated.d.ts +348 -348
  48. package/dist/courses/generated.d.ts.map +1 -1
  49. package/dist/custom/generated.d.ts +96 -96
  50. package/dist/custom/generated.d.ts.map +1 -1
  51. package/dist/dashboard/generated.d.ts +124 -124
  52. package/dist/dashboard/generated.d.ts.map +1 -1
  53. package/dist/elasticsearch/generated.d.ts +15 -15
  54. package/dist/elasticsearch/generated.d.ts.map +1 -1
  55. package/dist/enrollments/generated.d.ts +15 -15
  56. package/dist/enrollments/generated.d.ts.map +1 -1
  57. package/dist/errors/generated.d.ts +24 -24
  58. package/dist/errors/generated.d.ts.map +1 -1
  59. package/dist/eventconfig/generated.d.ts +103 -103
  60. package/dist/eventconfig/generated.d.ts.map +1 -1
  61. package/dist/funnels/generated.d.ts +111 -111
  62. package/dist/funnels/generated.d.ts.map +1 -1
  63. package/dist/gamification/generated.d.ts +105 -105
  64. package/dist/gamification/generated.d.ts.map +1 -1
  65. package/dist/impersonation/generated.d.ts +27 -27
  66. package/dist/impersonation/generated.d.ts.map +1 -1
  67. package/dist/inbox/generated.d.ts +117 -117
  68. package/dist/inbox/generated.d.ts.map +1 -1
  69. package/dist/internal/generated.d.ts +15 -15
  70. package/dist/internal/generated.d.ts.map +1 -1
  71. package/dist/internationalization/generated.d.ts +15 -15
  72. package/dist/internationalization/generated.d.ts.map +1 -1
  73. package/dist/invitations/generated.d.ts +85 -85
  74. package/dist/invitations/generated.d.ts.map +1 -1
  75. package/dist/meetings/generated.d.ts +295 -295
  76. package/dist/meetings/generated.d.ts.map +1 -1
  77. package/dist/metas/generated.d.ts +191 -191
  78. package/dist/metas/generated.d.ts.map +1 -1
  79. package/dist/notification/generated.d.ts +261 -261
  80. package/dist/notification/generated.d.ts.map +1 -1
  81. package/dist/notifications/generated.d.ts +15 -15
  82. package/dist/notifications/generated.d.ts.map +1 -1
  83. package/dist/onboarding/generated.d.ts +116 -116
  84. package/dist/onboarding/generated.d.ts.map +1 -1
  85. package/dist/packages/generated.d.ts +21 -21
  86. package/dist/packages/generated.d.ts.map +1 -1
  87. package/dist/payments/generated.d.ts +548 -548
  88. package/dist/payments/generated.d.ts.map +1 -1
  89. package/dist/payouts/generated.d.ts +15 -15
  90. package/dist/payouts/generated.d.ts.map +1 -1
  91. package/dist/plans/generated.d.ts +349 -349
  92. package/dist/plans/generated.d.ts.map +1 -1
  93. package/dist/pricing/generated.d.ts +41 -41
  94. package/dist/pricing/generated.d.ts.map +1 -1
  95. package/dist/products/generated.d.ts +398 -398
  96. package/dist/products/generated.d.ts.map +1 -1
  97. package/dist/profile/generated.d.ts +333 -333
  98. package/dist/profile/generated.d.ts.map +1 -1
  99. package/dist/reasons/generated.d.ts +81 -81
  100. package/dist/reasons/generated.d.ts.map +1 -1
  101. package/dist/registration/generated.d.ts +178 -178
  102. package/dist/registration/generated.d.ts.map +1 -1
  103. package/dist/reviews/generated.d.ts +63 -63
  104. package/dist/reviews/generated.d.ts.map +1 -1
  105. package/dist/role/generated.d.ts +218 -218
  106. package/dist/role/generated.d.ts.map +1 -1
  107. package/dist/scheduling/generated.d.ts +96 -96
  108. package/dist/scheduling/generated.d.ts.map +1 -1
  109. package/dist/services/generated.d.ts +957 -957
  110. package/dist/services/generated.d.ts.map +1 -1
  111. package/dist/sessions/generated.d.ts +370 -370
  112. package/dist/sessions/generated.d.ts.map +1 -1
  113. package/dist/spaces/generated.d.ts +533 -533
  114. package/dist/spaces/generated.d.ts.map +1 -1
  115. package/dist/storefront/generated.d.ts +15 -15
  116. package/dist/storefront/generated.d.ts.map +1 -1
  117. package/dist/support/generated.d.ts +1426 -1426
  118. package/dist/support/generated.d.ts.map +1 -1
  119. package/dist/sync/generated.d.ts +127 -127
  120. package/dist/sync/generated.d.ts.map +1 -1
  121. package/dist/tenant/generated.d.ts +528 -528
  122. package/dist/tenant/generated.d.ts.map +1 -1
  123. package/dist/testimonials/generated.d.ts +56 -56
  124. package/dist/testimonials/generated.d.ts.map +1 -1
  125. package/dist/tests/generated.d.ts +509 -509
  126. package/dist/tests/generated.d.ts.map +1 -1
  127. package/dist/tokens/generated.d.ts +50 -50
  128. package/dist/tokens/generated.d.ts.map +1 -1
  129. package/dist/uploads/generated.d.ts +29 -29
  130. package/dist/uploads/generated.d.ts.map +1 -1
  131. package/dist/upsell/generated.d.ts +80 -80
  132. package/dist/upsell/generated.d.ts.map +1 -1
  133. package/dist/user/generated.d.ts +76 -70
  134. package/dist/user/generated.d.ts.map +1 -1
  135. package/dist/webinars/generated.d.ts +336 -336
  136. package/dist/webinars/generated.d.ts.map +1 -1
  137. package/package.json +1 -1
  138. package/test-commit.txt +1 -0
@@ -180,106 +180,6 @@ export interface paths {
180
180
  export type webhooks = Record<string, never>;
181
181
  export interface components {
182
182
  schemas: {
183
- /**
184
- * ProductSection
185
- * @description Base product fields (maps to product_tbl)
186
- */
187
- ProductSection: {
188
- /**
189
- * Visibility
190
- * @description public, private, hidden, unlisted
191
- * @default public
192
- */
193
- visibility: string;
194
- /**
195
- * Is Digital
196
- * @description Digital product flag
197
- * @default true
198
- */
199
- is_digital: boolean;
200
- /**
201
- * Company Id
202
- * @description Multi-company support
203
- */
204
- company_id?: number | null;
205
- /**
206
- * Status
207
- * @description draft, published, archived, review_required, deleted
208
- * @default draft
209
- */
210
- status: string;
211
- /**
212
- * Is Org Level
213
- * @description Org-level vs user-created product
214
- * @default true
215
- */
216
- is_org_level: boolean;
217
- /**
218
- * Staff Id
219
- * @description Staff/instructor delivering product
220
- */
221
- staff_id?: number | null;
222
- /**
223
- * Owner Id
224
- * @description Owner of the product
225
- */
226
- owner_id?: number | null;
227
- /**
228
- * Featured
229
- * @description Featured product flag
230
- * @default false
231
- */
232
- featured: boolean;
233
- };
234
- /**
235
- * WebinarCreateRequest
236
- * @description Webinar creation request - inherits common fields, adds webinar-specific section
237
- * @example {
238
- * "identity": {
239
- * "description": "Learn the latest marketing strategies...",
240
- * "locale": "en-US",
241
- * "title": "Marketing Strategies 2025"
242
- * },
243
- * "product": {
244
- * "is_digital": true,
245
- * "status": "draft",
246
- * "visibility": "public"
247
- * },
248
- * "webinar": {
249
- * "conferencing_platform": "zoom",
250
- * "duration_minutes": 120,
251
- * "ends_at": "2025-12-25T17:00:00Z",
252
- * "max_attendees": 1000,
253
- * "primary_presenter_id": "usr_abc123def456",
254
- * "qa_enabled": true,
255
- * "recording_enabled": true,
256
- * "registration_required": true,
257
- * "starts_at": "2025-12-25T15:00:00Z"
258
- * }
259
- * }
260
- */
261
- WebinarCreateRequest: {
262
- /** @description Base product configuration */
263
- product: components["schemas"]["ProductSection"];
264
- /** @description Localized content (title, description) */
265
- identity: components["schemas"]["IdentitySection"];
266
- /** @description Pre-uploaded image IDs */
267
- media?: components["schemas"]["MediaSection"] | null;
268
- /**
269
- * Tags
270
- * @description Tag IDs to associate with product
271
- */
272
- tags?: number[] | null;
273
- /**
274
- * Variants
275
- * @description Product variants (optional)
276
- */
277
- variants?: components["schemas"]["VariantItem"][] | null;
278
- /** @description Pricing for product and variants */
279
- pricing?: components["schemas"]["PricingSection"] | null;
280
- /** @description Webinar-specific configuration */
281
- webinar: components["schemas"]["WebinarSection"];
282
- };
283
183
  /** Body_updateWebinar */
284
184
  Body_updateWebinar: {
285
185
  /** Starts At */
@@ -325,149 +225,83 @@ export interface components {
325
225
  error?: components["schemas"]["ErrorResponse"];
326
226
  };
327
227
  /**
328
- * ProductPrice
329
- * @description Base product pricing (maps to product_pricings_tbl with variant_id=NULL)
228
+ * VariantItem
229
+ * @description Product variant (maps to product_variants_tbl)
330
230
  */
331
- ProductPrice: {
332
- /**
333
- * Price Type
334
- * @description free, one_time, subscription, monthly_plan
335
- */
336
- price_type: string;
337
- /**
338
- * Currency
339
- * @description Currency code: INR, USD, EUR, etc.
340
- */
341
- currency: string;
342
- /**
343
- * Amount
344
- * @description Price amount
345
- */
346
- amount: number;
347
- /**
348
- * Compare At Amount
349
- * @description Original/strike-through price
350
- */
351
- compare_at_amount?: number | null;
352
- /**
353
- * Interval
354
- * @description day, week, month, year (for subscription)
355
- */
356
- interval?: string | null;
357
- /**
358
- * Interval Count
359
- * @description Number of intervals
360
- */
361
- interval_count?: number | null;
362
- /**
363
- * Trial Period Days
364
- * @description Free trial days
365
- */
366
- trial_period_days?: number | null;
231
+ VariantItem: {
367
232
  /**
368
- * Initial Amount
369
- * @description First payment amount
233
+ * Name
234
+ * @description Variant display name
370
235
  */
371
- initial_amount?: number | null;
236
+ name: string;
372
237
  /**
373
- * Gateway
374
- * @description stripe, razorpay, paypal, etc.
238
+ * Sku
239
+ * @description Stock Keeping Unit
375
240
  */
376
- gateway?: string | null;
241
+ sku?: string | null;
377
242
  /**
378
- * Requires Payment Method Upfront
379
- * @description Require payment method before trial
380
- * @default true
243
+ * Attributes
244
+ * @description Custom attributes
381
245
  */
382
- requires_payment_method_upfront: boolean;
383
- };
384
- /**
385
- * MediaSection
386
- * @description Product media files - direct media data
387
- */
388
- MediaSection: {
246
+ attributes?: {
247
+ [key: string]: unknown;
248
+ } | null;
389
249
  /**
390
- * Media Items
391
- * @description List of media files to attach to product
250
+ * Is Default
251
+ * @description Set as default variant
252
+ * @default false
392
253
  */
393
- media_items?: components["schemas"]["MediaItem"][] | null;
394
- };
395
- InvalidParam: {
396
- /** @example items[0].quantity */
397
- field?: string;
398
- /** @example Input should be greater than or equal to 1 */
399
- error?: string;
400
- };
401
- /**
402
- * MediaItem
403
- * @description Single media file item
404
- */
405
- MediaItem: {
254
+ is_default: boolean;
406
255
  /**
407
- * Media Type
408
- * @description logo, banner, promo_video, gallery_image, gallery_video, swatch
256
+ * Track Inventory
257
+ * @description Track stock for this variant
258
+ * @default false
409
259
  */
410
- media_type: string;
260
+ track_inventory: boolean;
411
261
  /**
412
- * File Path
413
- * @description Path to media file on storage (S3, CDN, local)
262
+ * Stock Quantity
263
+ * @description Initial stock
414
264
  */
415
- file_path: string;
265
+ stock_quantity?: number | null;
416
266
  /**
417
- * File Name
418
- * @description Original filename
267
+ * Allow Backorder
268
+ * @description Allow orders when out of stock
269
+ * @default false
419
270
  */
420
- file_name: string;
271
+ allow_backorder: boolean;
421
272
  /**
422
- * File Size
423
- * @description File size in bytes
273
+ * Weight
274
+ * @description Weight in kg
424
275
  */
425
- file_size?: number | null;
276
+ weight?: number | null;
426
277
  /**
427
- * Mime Type
428
- * @description MIME type (image/png, video/mp4, etc.)
278
+ * Length
279
+ * @description Length in cm
429
280
  */
430
- mime_type?: string | null;
281
+ length?: number | null;
431
282
  /**
432
283
  * Width
433
- * @description Width in pixels (for images/videos)
284
+ * @description Width in cm
434
285
  */
435
286
  width?: number | null;
436
287
  /**
437
288
  * Height
438
- * @description Height in pixels (for images/videos)
289
+ * @description Height in cm
439
290
  */
440
291
  height?: number | null;
441
- /**
442
- * Responsive Versions
443
- * @description JSON with thumbnail, small, medium, large, xlarge, original paths
444
- */
445
- responsive_versions?: {
446
- [key: string]: string;
447
- } | null;
448
- /**
449
- * Alt Text
450
- * @description Alt text for SEO/accessibility
451
- */
452
- alt_text?: string | null;
453
- /**
454
- * Locale
455
- * @description Media locale (en-US, es-PR, etc.)
456
- * @default en-US
457
- */
458
- locale: string;
459
292
  /**
460
293
  * Display Order
461
294
  * @description Display order
462
- * @default 0
295
+ * @default 100
463
296
  */
464
297
  display_order: number;
465
298
  /**
466
- * Is Primary
467
- * @description Mark as primary media
468
- * @default false
299
+ * Metadata
300
+ * @description Flexible metadata
469
301
  */
470
- is_primary: boolean;
302
+ metadata?: {
303
+ [key: string]: unknown;
304
+ } | null;
471
305
  };
472
306
  Extensions: {
473
307
  /** @example GENERIC_ERROR */
@@ -479,81 +313,53 @@ export interface components {
479
313
  debug?: string | null;
480
314
  };
481
315
  /**
482
- * VariantPrice
483
- * @description Variant-specific pricing (maps to product_pricings_tbl with variant_id set)
484
- */
485
- VariantPrice: {
486
- /**
487
- * Variant Index
488
- * @description Index in variants array (0-based)
489
- */
490
- variant_index: number;
491
- /**
492
- * Price Type
493
- * @description free, one_time, subscription, monthly_plan
494
- */
495
- price_type: string;
496
- /**
497
- * Currency
498
- * @description Currency code
499
- */
500
- currency: string;
501
- /**
502
- * Amount
503
- * @description Price amount
504
- */
505
- amount: number;
506
- /**
507
- * Compare At Amount
508
- * @description Original/strike-through price
509
- */
510
- compare_at_amount?: number | null;
511
- /**
512
- * Interval
513
- * @description day, week, month, year
514
- */
515
- interval?: string | null;
516
- /**
517
- * Interval Count
518
- * @description Number of intervals
519
- */
520
- interval_count?: number | null;
521
- /**
522
- * Trial Period Days
523
- * @description Free trial days
524
- */
525
- trial_period_days?: number | null;
526
- /**
527
- * Initial Amount
528
- * @description First payment amount
529
- */
530
- initial_amount?: number | null;
316
+ * WebinarCreateRequest
317
+ * @description Webinar creation request - inherits common fields, adds webinar-specific section
318
+ * @example {
319
+ * "identity": {
320
+ * "description": "Learn the latest marketing strategies...",
321
+ * "locale": "en-US",
322
+ * "title": "Marketing Strategies 2025"
323
+ * },
324
+ * "product": {
325
+ * "is_digital": true,
326
+ * "status": "draft",
327
+ * "visibility": "public"
328
+ * },
329
+ * "webinar": {
330
+ * "conferencing_platform": "zoom",
331
+ * "duration_minutes": 120,
332
+ * "ends_at": "2025-12-25T17:00:00Z",
333
+ * "max_attendees": 1000,
334
+ * "primary_presenter_id": "usr_abc123def456",
335
+ * "qa_enabled": true,
336
+ * "recording_enabled": true,
337
+ * "registration_required": true,
338
+ * "starts_at": "2025-12-25T15:00:00Z"
339
+ * }
340
+ * }
341
+ */
342
+ WebinarCreateRequest: {
343
+ /** @description Base product configuration */
344
+ product: components["schemas"]["ProductSection"];
345
+ /** @description Localized content (title, description) */
346
+ identity: components["schemas"]["IdentitySection"];
347
+ /** @description Pre-uploaded image IDs */
348
+ media?: components["schemas"]["MediaSection"] | null;
531
349
  /**
532
- * Gateway
533
- * @description stripe, razorpay, paypal, etc.
350
+ * Tags
351
+ * @description Tag IDs to associate with product
534
352
  */
535
- gateway?: string | null;
353
+ tags?: number[] | null;
536
354
  /**
537
- * Requires Payment Method Upfront
538
- * @description Require payment method before trial
539
- * @default true
355
+ * Variants
356
+ * @description Product variants (optional)
540
357
  */
541
- requires_payment_method_upfront: boolean;
542
- };
543
- ErrorResponse: {
544
- /** @example about:blank */
545
- type?: string;
546
- /** @example GENERIC_ERROR */
547
- code?: string;
548
- /** @example Client Error */
549
- title?: string;
550
- /** @example 400 */
551
- status?: number;
552
- /** @example An error occurred */
553
- detail?: string;
554
- /** @example /v1/cart/items */
555
- instance?: string;
556
- extensions?: components["schemas"]["Extensions"];
358
+ variants?: components["schemas"]["VariantItem"][] | null;
359
+ /** @description Pricing for product and variants */
360
+ pricing?: components["schemas"]["PricingSection"] | null;
361
+ /** @description Webinar-specific configuration */
362
+ webinar: components["schemas"]["WebinarSection"];
557
363
  };
558
364
  /**
559
365
  * WebinarSection
@@ -697,17 +503,61 @@ export interface components {
697
503
  locale?: string | null;
698
504
  };
699
505
  /**
700
- * PricingSection
701
- * @description Pricing configuration (optional - can have product price, variant prices, or both)
506
+ * ProductPrice
507
+ * @description Base product pricing (maps to product_pricings_tbl with variant_id=NULL)
702
508
  */
703
- PricingSection: {
704
- /** @description Base product price (no variant) */
705
- product_price?: components["schemas"]["ProductPrice"] | null;
509
+ ProductPrice: {
706
510
  /**
707
- * Variant Prices
708
- * @description Variant-specific prices
511
+ * Price Type
512
+ * @description free, one_time, subscription, monthly_plan
709
513
  */
710
- variant_prices?: components["schemas"]["VariantPrice"][] | null;
514
+ price_type: string;
515
+ /**
516
+ * Currency
517
+ * @description Currency code: INR, USD, EUR, etc.
518
+ */
519
+ currency: string;
520
+ /**
521
+ * Amount
522
+ * @description Price amount
523
+ */
524
+ amount: number;
525
+ /**
526
+ * Compare At Amount
527
+ * @description Original/strike-through price
528
+ */
529
+ compare_at_amount?: number | null;
530
+ /**
531
+ * Interval
532
+ * @description day, week, month, year (for subscription)
533
+ */
534
+ interval?: string | null;
535
+ /**
536
+ * Interval Count
537
+ * @description Number of intervals
538
+ */
539
+ interval_count?: number | null;
540
+ /**
541
+ * Trial Period Days
542
+ * @description Free trial days
543
+ */
544
+ trial_period_days?: number | null;
545
+ /**
546
+ * Initial Amount
547
+ * @description First payment amount
548
+ */
549
+ initial_amount?: number | null;
550
+ /**
551
+ * Gateway
552
+ * @description stripe, razorpay, paypal, etc.
553
+ */
554
+ gateway?: string | null;
555
+ /**
556
+ * Requires Payment Method Upfront
557
+ * @description Require payment method before trial
558
+ * @default true
559
+ */
560
+ requires_payment_method_upfront: boolean;
711
561
  };
712
562
  /**
713
563
  * IdentitySection
@@ -742,83 +592,233 @@ export interface components {
742
592
  short_description?: string | null;
743
593
  };
744
594
  /**
745
- * VariantItem
746
- * @description Product variant (maps to product_variants_tbl)
595
+ * MediaItem
596
+ * @description Single media file item
747
597
  */
748
- VariantItem: {
598
+ MediaItem: {
749
599
  /**
750
- * Name
751
- * @description Variant display name
600
+ * Media Type
601
+ * @description logo, banner, promo_video, gallery_image, gallery_video, swatch
752
602
  */
753
- name: string;
603
+ media_type: string;
754
604
  /**
755
- * Sku
756
- * @description Stock Keeping Unit
605
+ * File Path
606
+ * @description Path to media file on storage (S3, CDN, local)
757
607
  */
758
- sku?: string | null;
608
+ file_path: string;
759
609
  /**
760
- * Attributes
761
- * @description Custom attributes
610
+ * File Name
611
+ * @description Original filename
762
612
  */
763
- attributes?: {
764
- [key: string]: unknown;
613
+ file_name: string;
614
+ /**
615
+ * File Size
616
+ * @description File size in bytes
617
+ */
618
+ file_size?: number | null;
619
+ /**
620
+ * Mime Type
621
+ * @description MIME type (image/png, video/mp4, etc.)
622
+ */
623
+ mime_type?: string | null;
624
+ /**
625
+ * Width
626
+ * @description Width in pixels (for images/videos)
627
+ */
628
+ width?: number | null;
629
+ /**
630
+ * Height
631
+ * @description Height in pixels (for images/videos)
632
+ */
633
+ height?: number | null;
634
+ /**
635
+ * Responsive Versions
636
+ * @description JSON with thumbnail, small, medium, large, xlarge, original paths
637
+ */
638
+ responsive_versions?: {
639
+ [key: string]: string;
765
640
  } | null;
766
641
  /**
767
- * Is Default
768
- * @description Set as default variant
769
- * @default false
642
+ * Alt Text
643
+ * @description Alt text for SEO/accessibility
770
644
  */
771
- is_default: boolean;
645
+ alt_text?: string | null;
772
646
  /**
773
- * Track Inventory
774
- * @description Track stock for this variant
775
- * @default false
647
+ * Locale
648
+ * @description Media locale (en-US, es-PR, etc.)
649
+ * @default en-US
776
650
  */
777
- track_inventory: boolean;
651
+ locale: string;
778
652
  /**
779
- * Stock Quantity
780
- * @description Initial stock
653
+ * Display Order
654
+ * @description Display order
655
+ * @default 0
781
656
  */
782
- stock_quantity?: number | null;
657
+ display_order: number;
783
658
  /**
784
- * Allow Backorder
785
- * @description Allow orders when out of stock
659
+ * Is Primary
660
+ * @description Mark as primary media
786
661
  * @default false
787
662
  */
788
- allow_backorder: boolean;
663
+ is_primary: boolean;
664
+ };
665
+ InvalidParam: {
666
+ /** @example items[0].quantity */
667
+ field?: string;
668
+ /** @example Input should be greater than or equal to 1 */
669
+ error?: string;
670
+ };
671
+ /**
672
+ * VariantPrice
673
+ * @description Variant-specific pricing (maps to product_pricings_tbl with variant_id set)
674
+ */
675
+ VariantPrice: {
789
676
  /**
790
- * Weight
791
- * @description Weight in kg
677
+ * Variant Index
678
+ * @description Index in variants array (0-based)
792
679
  */
793
- weight?: number | null;
680
+ variant_index: number;
794
681
  /**
795
- * Length
796
- * @description Length in cm
682
+ * Price Type
683
+ * @description free, one_time, subscription, monthly_plan
797
684
  */
798
- length?: number | null;
685
+ price_type: string;
799
686
  /**
800
- * Width
801
- * @description Width in cm
687
+ * Currency
688
+ * @description Currency code
802
689
  */
803
- width?: number | null;
690
+ currency: string;
804
691
  /**
805
- * Height
806
- * @description Height in cm
692
+ * Amount
693
+ * @description Price amount
807
694
  */
808
- height?: number | null;
695
+ amount: number;
809
696
  /**
810
- * Display Order
811
- * @description Display order
812
- * @default 100
697
+ * Compare At Amount
698
+ * @description Original/strike-through price
813
699
  */
814
- display_order: number;
700
+ compare_at_amount?: number | null;
815
701
  /**
816
- * Metadata
817
- * @description Flexible metadata
702
+ * Interval
703
+ * @description day, week, month, year
818
704
  */
819
- metadata?: {
820
- [key: string]: unknown;
821
- } | null;
705
+ interval?: string | null;
706
+ /**
707
+ * Interval Count
708
+ * @description Number of intervals
709
+ */
710
+ interval_count?: number | null;
711
+ /**
712
+ * Trial Period Days
713
+ * @description Free trial days
714
+ */
715
+ trial_period_days?: number | null;
716
+ /**
717
+ * Initial Amount
718
+ * @description First payment amount
719
+ */
720
+ initial_amount?: number | null;
721
+ /**
722
+ * Gateway
723
+ * @description stripe, razorpay, paypal, etc.
724
+ */
725
+ gateway?: string | null;
726
+ /**
727
+ * Requires Payment Method Upfront
728
+ * @description Require payment method before trial
729
+ * @default true
730
+ */
731
+ requires_payment_method_upfront: boolean;
732
+ };
733
+ /**
734
+ * ProductSection
735
+ * @description Base product fields (maps to product_tbl)
736
+ */
737
+ ProductSection: {
738
+ /**
739
+ * Visibility
740
+ * @description public, private, hidden, unlisted
741
+ * @default public
742
+ */
743
+ visibility: string;
744
+ /**
745
+ * Is Digital
746
+ * @description Digital product flag
747
+ * @default true
748
+ */
749
+ is_digital: boolean;
750
+ /**
751
+ * Company Id
752
+ * @description Multi-company support
753
+ */
754
+ company_id?: number | null;
755
+ /**
756
+ * Status
757
+ * @description draft, published, archived, review_required, deleted
758
+ * @default draft
759
+ */
760
+ status: string;
761
+ /**
762
+ * Is Org Level
763
+ * @description Org-level vs user-created product
764
+ * @default true
765
+ */
766
+ is_org_level: boolean;
767
+ /**
768
+ * Staff Id
769
+ * @description Staff/instructor delivering product
770
+ */
771
+ staff_id?: number | null;
772
+ /**
773
+ * Owner Id
774
+ * @description Owner of the product
775
+ */
776
+ owner_id?: number | null;
777
+ /**
778
+ * Featured
779
+ * @description Featured product flag
780
+ * @default false
781
+ */
782
+ featured: boolean;
783
+ };
784
+ ErrorResponse: {
785
+ /** @example about:blank */
786
+ type?: string;
787
+ /** @example GENERIC_ERROR */
788
+ code?: string;
789
+ /** @example Client Error */
790
+ title?: string;
791
+ /** @example 400 */
792
+ status?: number;
793
+ /** @example An error occurred */
794
+ detail?: string;
795
+ /** @example /v1/cart/items */
796
+ instance?: string;
797
+ extensions?: components["schemas"]["Extensions"];
798
+ };
799
+ /**
800
+ * MediaSection
801
+ * @description Product media files - direct media data
802
+ */
803
+ MediaSection: {
804
+ /**
805
+ * Media Items
806
+ * @description List of media files to attach to product
807
+ */
808
+ media_items?: components["schemas"]["MediaItem"][] | null;
809
+ };
810
+ /**
811
+ * PricingSection
812
+ * @description Pricing configuration (optional - can have product price, variant prices, or both)
813
+ */
814
+ PricingSection: {
815
+ /** @description Base product price (no variant) */
816
+ product_price?: components["schemas"]["ProductPrice"] | null;
817
+ /**
818
+ * Variant Prices
819
+ * @description Variant-specific prices
820
+ */
821
+ variant_prices?: components["schemas"]["VariantPrice"][] | null;
822
822
  };
823
823
  };
824
824
  responses: never;