orb-billing 4.72.3 → 4.74.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/README.md +18 -30
  3. package/index.d.mts +7 -4
  4. package/index.d.ts +7 -4
  5. package/index.d.ts.map +1 -1
  6. package/index.js +3 -0
  7. package/index.js.map +1 -1
  8. package/index.mjs +3 -0
  9. package/index.mjs.map +1 -1
  10. package/package.json +1 -1
  11. package/resources/alerts.d.ts +18 -0
  12. package/resources/alerts.d.ts.map +1 -1
  13. package/resources/alerts.js.map +1 -1
  14. package/resources/alerts.mjs.map +1 -1
  15. package/resources/beta/beta.d.ts +7492 -0
  16. package/resources/beta/beta.d.ts.map +1 -0
  17. package/resources/beta/beta.js +67 -0
  18. package/resources/beta/beta.js.map +1 -0
  19. package/resources/beta/beta.mjs +40 -0
  20. package/resources/beta/beta.mjs.map +1 -0
  21. package/resources/beta/external-plan-id.d.ts +7218 -0
  22. package/resources/beta/external-plan-id.d.ts.map +1 -0
  23. package/resources/beta/external-plan-id.js +40 -0
  24. package/resources/beta/external-plan-id.js.map +1 -0
  25. package/resources/beta/external-plan-id.mjs +36 -0
  26. package/resources/beta/external-plan-id.mjs.map +1 -0
  27. package/resources/beta/index.d.ts +3 -0
  28. package/resources/beta/index.d.ts.map +1 -0
  29. package/resources/beta/index.js +9 -0
  30. package/resources/beta/index.js.map +1 -0
  31. package/resources/beta/index.mjs +4 -0
  32. package/resources/beta/index.mjs.map +1 -0
  33. package/resources/beta.d.ts +2 -0
  34. package/resources/beta.d.ts.map +1 -0
  35. package/resources/beta.js +19 -0
  36. package/resources/beta.js.map +1 -0
  37. package/resources/beta.mjs +3 -0
  38. package/resources/beta.mjs.map +1 -0
  39. package/resources/credit-notes.d.ts +4 -4
  40. package/resources/credit-notes.d.ts.map +1 -1
  41. package/resources/customers/balance-transactions.d.ts +0 -7
  42. package/resources/customers/balance-transactions.d.ts.map +1 -1
  43. package/resources/customers/balance-transactions.js.map +1 -1
  44. package/resources/customers/balance-transactions.mjs.map +1 -1
  45. package/resources/customers/credits/ledger.d.ts +17 -0
  46. package/resources/customers/credits/ledger.d.ts.map +1 -1
  47. package/resources/customers/credits/ledger.js.map +1 -1
  48. package/resources/customers/credits/ledger.mjs.map +1 -1
  49. package/resources/customers/credits/top-ups.d.ts +26 -14
  50. package/resources/customers/credits/top-ups.d.ts.map +1 -1
  51. package/resources/customers/credits/top-ups.js.map +1 -1
  52. package/resources/customers/credits/top-ups.mjs.map +1 -1
  53. package/resources/customers/customers.d.ts +16 -7
  54. package/resources/customers/customers.d.ts.map +1 -1
  55. package/resources/customers/customers.js +1 -4
  56. package/resources/customers/customers.js.map +1 -1
  57. package/resources/customers/customers.mjs +1 -4
  58. package/resources/customers/customers.mjs.map +1 -1
  59. package/resources/dimensional-price-groups/dimensional-price-groups.d.ts +1 -1
  60. package/resources/dimensional-price-groups/dimensional-price-groups.js +1 -1
  61. package/resources/dimensional-price-groups/dimensional-price-groups.mjs +1 -1
  62. package/resources/events/events.d.ts +3 -3
  63. package/resources/events/events.d.ts.map +1 -1
  64. package/resources/index.d.ts +3 -2
  65. package/resources/index.d.ts.map +1 -1
  66. package/resources/index.js +3 -1
  67. package/resources/index.js.map +1 -1
  68. package/resources/index.mjs +1 -0
  69. package/resources/index.mjs.map +1 -1
  70. package/resources/invoice-line-items.d.ts +150 -10
  71. package/resources/invoice-line-items.d.ts.map +1 -1
  72. package/resources/invoices.d.ts +388 -28
  73. package/resources/invoices.d.ts.map +1 -1
  74. package/resources/invoices.js.map +1 -1
  75. package/resources/invoices.mjs.map +1 -1
  76. package/resources/items.d.ts +23 -0
  77. package/resources/items.d.ts.map +1 -1
  78. package/resources/items.js +6 -0
  79. package/resources/items.js.map +1 -1
  80. package/resources/items.mjs +6 -0
  81. package/resources/items.mjs.map +1 -1
  82. package/resources/plans/external-plan-id.d.ts +1 -1
  83. package/resources/plans/external-plan-id.js +1 -1
  84. package/resources/plans/external-plan-id.mjs +1 -1
  85. package/resources/plans/plans.d.ts +1153 -22
  86. package/resources/plans/plans.d.ts.map +1 -1
  87. package/resources/plans/plans.js +1 -1
  88. package/resources/plans/plans.js.map +1 -1
  89. package/resources/plans/plans.mjs +1 -1
  90. package/resources/plans/plans.mjs.map +1 -1
  91. package/resources/prices/index.d.ts +1 -1
  92. package/resources/prices/index.d.ts.map +1 -1
  93. package/resources/prices/index.js.map +1 -1
  94. package/resources/prices/index.mjs.map +1 -1
  95. package/resources/prices/prices.d.ts +6180 -123
  96. package/resources/prices/prices.d.ts.map +1 -1
  97. package/resources/prices/prices.js +40 -1
  98. package/resources/prices/prices.js.map +1 -1
  99. package/resources/prices/prices.mjs +40 -1
  100. package/resources/prices/prices.mjs.map +1 -1
  101. package/resources/shared.d.ts +14 -14
  102. package/resources/shared.d.ts.map +1 -1
  103. package/resources/subscription-changes.d.ts +648 -87
  104. package/resources/subscription-changes.d.ts.map +1 -1
  105. package/resources/subscriptions.d.ts +10981 -3716
  106. package/resources/subscriptions.d.ts.map +1 -1
  107. package/resources/subscriptions.js +6 -0
  108. package/resources/subscriptions.js.map +1 -1
  109. package/resources/subscriptions.mjs +6 -0
  110. package/resources/subscriptions.mjs.map +1 -1
  111. package/src/index.ts +25 -0
  112. package/src/resources/alerts.ts +21 -0
  113. package/src/resources/beta/beta.ts +9106 -0
  114. package/src/resources/beta/external-plan-id.ts +8748 -0
  115. package/src/resources/beta/index.ts +14 -0
  116. package/src/resources/beta.ts +3 -0
  117. package/src/resources/credit-notes.ts +4 -4
  118. package/src/resources/customers/balance-transactions.ts +0 -7
  119. package/src/resources/customers/credits/ledger.ts +21 -0
  120. package/src/resources/customers/credits/top-ups.ts +26 -14
  121. package/src/resources/customers/customers.ts +22 -4
  122. package/src/resources/dimensional-price-groups/dimensional-price-groups.ts +1 -1
  123. package/src/resources/events/events.ts +3 -3
  124. package/src/resources/index.ts +11 -0
  125. package/src/resources/invoice-line-items.ts +178 -10
  126. package/src/resources/invoices.ts +460 -28
  127. package/src/resources/items.ts +29 -0
  128. package/src/resources/plans/external-plan-id.ts +1 -1
  129. package/src/resources/plans/plans.ts +1375 -30
  130. package/src/resources/prices/index.ts +2 -0
  131. package/src/resources/prices/prices.ts +7345 -135
  132. package/src/resources/shared.ts +18 -18
  133. package/src/resources/subscription-changes.ts +771 -102
  134. package/src/resources/subscriptions.ts +13383 -4686
  135. package/src/version.ts +1 -1
  136. package/version.d.ts +1 -1
  137. package/version.js +1 -1
  138. package/version.mjs +1 -1
@@ -173,7 +173,8 @@ export namespace SubscriptionChangeRetrieveResponse {
173
173
  default_invoice_memo: string | null;
174
174
 
175
175
  /**
176
- * The discount intervals for this subscription sorted by the start_date.
176
+ * @deprecated The discount intervals for this subscription sorted by the
177
+ * start_date.
177
178
  */
178
179
  discount_intervals: Array<
179
180
  | Subscription.AmountDiscountInterval
@@ -191,7 +192,8 @@ export namespace SubscriptionChangeRetrieveResponse {
191
192
  invoicing_threshold: string | null;
192
193
 
193
194
  /**
194
- * The maximum intervals for this subscription sorted by the start_date.
195
+ * @deprecated The maximum intervals for this subscription sorted by the
196
+ * start_date.
195
197
  */
196
198
  maximum_intervals: Array<Subscription.MaximumInterval>;
197
199
 
@@ -204,10 +206,16 @@ export namespace SubscriptionChangeRetrieveResponse {
204
206
  metadata: Record<string, string>;
205
207
 
206
208
  /**
207
- * The minimum intervals for this subscription sorted by the start_date.
209
+ * @deprecated The minimum intervals for this subscription sorted by the
210
+ * start_date.
208
211
  */
209
212
  minimum_intervals: Array<Subscription.MinimumInterval>;
210
213
 
214
+ /**
215
+ * The name of the subscription.
216
+ */
217
+ name: string;
218
+
211
219
  /**
212
220
  * Determines the difference between the invoice issue date for subscription
213
221
  * invoices as the date that they are due. A value of `0` here represents that the
@@ -227,7 +235,7 @@ export namespace SubscriptionChangeRetrieveResponse {
227
235
  * subscription. You can see more about how to configure prices in the
228
236
  * [Price resource](/reference/price).
229
237
  */
230
- plan: PlansAPI.Plan;
238
+ plan: PlansAPI.Plan | null;
231
239
 
232
240
  /**
233
241
  * The price intervals for this subscription.
@@ -287,10 +295,15 @@ export namespace SubscriptionChangeRetrieveResponse {
287
295
  adjustment_type: 'usage_discount';
288
296
 
289
297
  /**
290
- * The price IDs that this adjustment applies to.
298
+ * @deprecated The price IDs that this adjustment applies to.
291
299
  */
292
300
  applies_to_price_ids: Array<string>;
293
301
 
302
+ /**
303
+ * The filters that determine which prices to apply this adjustment to.
304
+ */
305
+ filters: Array<PlanPhaseUsageDiscountAdjustment.Filter>;
306
+
294
307
  /**
295
308
  * True for adjustments that apply to an entire invocice, false for adjustments
296
309
  * that apply to only one price.
@@ -314,6 +327,25 @@ export namespace SubscriptionChangeRetrieveResponse {
314
327
  usage_discount: number;
315
328
  }
316
329
 
330
+ export namespace PlanPhaseUsageDiscountAdjustment {
331
+ export interface Filter {
332
+ /**
333
+ * The property of the price to filter on.
334
+ */
335
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
336
+
337
+ /**
338
+ * Should prices that match the filter be included or excluded.
339
+ */
340
+ operator: 'includes' | 'excludes';
341
+
342
+ /**
343
+ * The IDs or values that match this filter.
344
+ */
345
+ values: Array<string>;
346
+ }
347
+ }
348
+
317
349
  export interface PlanPhaseAmountDiscountAdjustment {
318
350
  id: string;
319
351
 
@@ -326,10 +358,15 @@ export namespace SubscriptionChangeRetrieveResponse {
326
358
  amount_discount: string;
327
359
 
328
360
  /**
329
- * The price IDs that this adjustment applies to.
361
+ * @deprecated The price IDs that this adjustment applies to.
330
362
  */
331
363
  applies_to_price_ids: Array<string>;
332
364
 
365
+ /**
366
+ * The filters that determine which prices to apply this adjustment to.
367
+ */
368
+ filters: Array<PlanPhaseAmountDiscountAdjustment.Filter>;
369
+
333
370
  /**
334
371
  * True for adjustments that apply to an entire invocice, false for adjustments
335
372
  * that apply to only one price.
@@ -347,16 +384,40 @@ export namespace SubscriptionChangeRetrieveResponse {
347
384
  reason: string | null;
348
385
  }
349
386
 
387
+ export namespace PlanPhaseAmountDiscountAdjustment {
388
+ export interface Filter {
389
+ /**
390
+ * The property of the price to filter on.
391
+ */
392
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
393
+
394
+ /**
395
+ * Should prices that match the filter be included or excluded.
396
+ */
397
+ operator: 'includes' | 'excludes';
398
+
399
+ /**
400
+ * The IDs or values that match this filter.
401
+ */
402
+ values: Array<string>;
403
+ }
404
+ }
405
+
350
406
  export interface PlanPhasePercentageDiscountAdjustment {
351
407
  id: string;
352
408
 
353
409
  adjustment_type: 'percentage_discount';
354
410
 
355
411
  /**
356
- * The price IDs that this adjustment applies to.
412
+ * @deprecated The price IDs that this adjustment applies to.
357
413
  */
358
414
  applies_to_price_ids: Array<string>;
359
415
 
416
+ /**
417
+ * The filters that determine which prices to apply this adjustment to.
418
+ */
419
+ filters: Array<PlanPhasePercentageDiscountAdjustment.Filter>;
420
+
360
421
  /**
361
422
  * True for adjustments that apply to an entire invocice, false for adjustments
362
423
  * that apply to only one price.
@@ -380,16 +441,40 @@ export namespace SubscriptionChangeRetrieveResponse {
380
441
  reason: string | null;
381
442
  }
382
443
 
444
+ export namespace PlanPhasePercentageDiscountAdjustment {
445
+ export interface Filter {
446
+ /**
447
+ * The property of the price to filter on.
448
+ */
449
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
450
+
451
+ /**
452
+ * Should prices that match the filter be included or excluded.
453
+ */
454
+ operator: 'includes' | 'excludes';
455
+
456
+ /**
457
+ * The IDs or values that match this filter.
458
+ */
459
+ values: Array<string>;
460
+ }
461
+ }
462
+
383
463
  export interface PlanPhaseMinimumAdjustment {
384
464
  id: string;
385
465
 
386
466
  adjustment_type: 'minimum';
387
467
 
388
468
  /**
389
- * The price IDs that this adjustment applies to.
469
+ * @deprecated The price IDs that this adjustment applies to.
390
470
  */
391
471
  applies_to_price_ids: Array<string>;
392
472
 
473
+ /**
474
+ * The filters that determine which prices to apply this adjustment to.
475
+ */
476
+ filters: Array<PlanPhaseMinimumAdjustment.Filter>;
477
+
393
478
  /**
394
479
  * True for adjustments that apply to an entire invocice, false for adjustments
395
480
  * that apply to only one price.
@@ -418,16 +503,40 @@ export namespace SubscriptionChangeRetrieveResponse {
418
503
  reason: string | null;
419
504
  }
420
505
 
506
+ export namespace PlanPhaseMinimumAdjustment {
507
+ export interface Filter {
508
+ /**
509
+ * The property of the price to filter on.
510
+ */
511
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
512
+
513
+ /**
514
+ * Should prices that match the filter be included or excluded.
515
+ */
516
+ operator: 'includes' | 'excludes';
517
+
518
+ /**
519
+ * The IDs or values that match this filter.
520
+ */
521
+ values: Array<string>;
522
+ }
523
+ }
524
+
421
525
  export interface PlanPhaseMaximumAdjustment {
422
526
  id: string;
423
527
 
424
528
  adjustment_type: 'maximum';
425
529
 
426
530
  /**
427
- * The price IDs that this adjustment applies to.
531
+ * @deprecated The price IDs that this adjustment applies to.
428
532
  */
429
533
  applies_to_price_ids: Array<string>;
430
534
 
535
+ /**
536
+ * The filters that determine which prices to apply this adjustment to.
537
+ */
538
+ filters: Array<PlanPhaseMaximumAdjustment.Filter>;
539
+
431
540
  /**
432
541
  * True for adjustments that apply to an entire invocice, false for adjustments
433
542
  * that apply to only one price.
@@ -450,6 +559,25 @@ export namespace SubscriptionChangeRetrieveResponse {
450
559
  */
451
560
  reason: string | null;
452
561
  }
562
+
563
+ export namespace PlanPhaseMaximumAdjustment {
564
+ export interface Filter {
565
+ /**
566
+ * The property of the price to filter on.
567
+ */
568
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
569
+
570
+ /**
571
+ * Should prices that match the filter be included or excluded.
572
+ */
573
+ operator: 'includes' | 'excludes';
574
+
575
+ /**
576
+ * The IDs or values that match this filter.
577
+ */
578
+ values: Array<string>;
579
+ }
580
+ }
453
581
  }
454
582
 
455
583
  export interface BillingCycleAnchorConfiguration {
@@ -481,11 +609,6 @@ export namespace SubscriptionChangeRetrieveResponse {
481
609
  */
482
610
  amount_discount: string;
483
611
 
484
- /**
485
- * The price ids that this discount interval applies to.
486
- */
487
- applies_to_price_ids: Array<string>;
488
-
489
612
  /**
490
613
  * The price interval ids that this discount interval applies to.
491
614
  */
@@ -498,18 +621,37 @@ export namespace SubscriptionChangeRetrieveResponse {
498
621
  */
499
622
  end_date: string | null;
500
623
 
624
+ /**
625
+ * The filters that determine which prices this discount interval applies to.
626
+ */
627
+ filters: Array<AmountDiscountInterval.Filter>;
628
+
501
629
  /**
502
630
  * The start date of the discount interval.
503
631
  */
504
632
  start_date: string;
505
633
  }
506
634
 
507
- export interface PercentageDiscountInterval {
508
- /**
509
- * The price ids that this discount interval applies to.
510
- */
511
- applies_to_price_ids: Array<string>;
635
+ export namespace AmountDiscountInterval {
636
+ export interface Filter {
637
+ /**
638
+ * The property of the price to filter on.
639
+ */
640
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
512
641
 
642
+ /**
643
+ * Should prices that match the filter be included or excluded.
644
+ */
645
+ operator: 'includes' | 'excludes';
646
+
647
+ /**
648
+ * The IDs or values that match this filter.
649
+ */
650
+ values: Array<string>;
651
+ }
652
+ }
653
+
654
+ export interface PercentageDiscountInterval {
513
655
  /**
514
656
  * The price interval ids that this discount interval applies to.
515
657
  */
@@ -522,6 +664,11 @@ export namespace SubscriptionChangeRetrieveResponse {
522
664
  */
523
665
  end_date: string | null;
524
666
 
667
+ /**
668
+ * The filters that determine which prices this discount interval applies to.
669
+ */
670
+ filters: Array<PercentageDiscountInterval.Filter>;
671
+
525
672
  /**
526
673
  * Only available if discount_type is `percentage`.This is a number between 0
527
674
  * and 1.
@@ -534,12 +681,26 @@ export namespace SubscriptionChangeRetrieveResponse {
534
681
  start_date: string;
535
682
  }
536
683
 
537
- export interface UsageDiscountInterval {
538
- /**
539
- * The price ids that this discount interval applies to.
540
- */
541
- applies_to_price_ids: Array<string>;
684
+ export namespace PercentageDiscountInterval {
685
+ export interface Filter {
686
+ /**
687
+ * The property of the price to filter on.
688
+ */
689
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
690
+
691
+ /**
692
+ * Should prices that match the filter be included or excluded.
693
+ */
694
+ operator: 'includes' | 'excludes';
695
+
696
+ /**
697
+ * The IDs or values that match this filter.
698
+ */
699
+ values: Array<string>;
700
+ }
701
+ }
542
702
 
703
+ export interface UsageDiscountInterval {
543
704
  /**
544
705
  * The price interval ids that this discount interval applies to.
545
706
  */
@@ -552,6 +713,11 @@ export namespace SubscriptionChangeRetrieveResponse {
552
713
  */
553
714
  end_date: string | null;
554
715
 
716
+ /**
717
+ * The filters that determine which prices this discount interval applies to.
718
+ */
719
+ filters: Array<UsageDiscountInterval.Filter>;
720
+
555
721
  /**
556
722
  * The start date of the discount interval.
557
723
  */
@@ -564,6 +730,25 @@ export namespace SubscriptionChangeRetrieveResponse {
564
730
  usage_discount: number;
565
731
  }
566
732
 
733
+ export namespace UsageDiscountInterval {
734
+ export interface Filter {
735
+ /**
736
+ * The property of the price to filter on.
737
+ */
738
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
739
+
740
+ /**
741
+ * Should prices that match the filter be included or excluded.
742
+ */
743
+ operator: 'includes' | 'excludes';
744
+
745
+ /**
746
+ * The IDs or values that match this filter.
747
+ */
748
+ values: Array<string>;
749
+ }
750
+ }
751
+
567
752
  export interface FixedFeeQuantitySchedule {
568
753
  end_date: string | null;
569
754
 
@@ -575,11 +760,6 @@ export namespace SubscriptionChangeRetrieveResponse {
575
760
  }
576
761
 
577
762
  export interface MaximumInterval {
578
- /**
579
- * The price ids that this maximum interval applies to.
580
- */
581
- applies_to_price_ids: Array<string>;
582
-
583
763
  /**
584
764
  * The price interval ids that this maximum interval applies to.
585
765
  */
@@ -590,6 +770,11 @@ export namespace SubscriptionChangeRetrieveResponse {
590
770
  */
591
771
  end_date: string | null;
592
772
 
773
+ /**
774
+ * The filters that determine which prices this maximum interval applies to.
775
+ */
776
+ filters: Array<MaximumInterval.Filter>;
777
+
593
778
  /**
594
779
  * The maximum amount to charge in a given billing period for the price intervals
595
780
  * this transform applies to.
@@ -602,12 +787,26 @@ export namespace SubscriptionChangeRetrieveResponse {
602
787
  start_date: string;
603
788
  }
604
789
 
605
- export interface MinimumInterval {
606
- /**
607
- * The price ids that this minimum interval applies to.
608
- */
609
- applies_to_price_ids: Array<string>;
790
+ export namespace MaximumInterval {
791
+ export interface Filter {
792
+ /**
793
+ * The property of the price to filter on.
794
+ */
795
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
796
+
797
+ /**
798
+ * Should prices that match the filter be included or excluded.
799
+ */
800
+ operator: 'includes' | 'excludes';
801
+
802
+ /**
803
+ * The IDs or values that match this filter.
804
+ */
805
+ values: Array<string>;
806
+ }
807
+ }
610
808
 
809
+ export interface MinimumInterval {
611
810
  /**
612
811
  * The price interval ids that this minimum interval applies to.
613
812
  */
@@ -618,6 +817,11 @@ export namespace SubscriptionChangeRetrieveResponse {
618
817
  */
619
818
  end_date: string | null;
620
819
 
820
+ /**
821
+ * The filters that determine which prices this minimum interval applies to.
822
+ */
823
+ filters: Array<MinimumInterval.Filter>;
824
+
621
825
  /**
622
826
  * The minimum amount to charge in a given billing period for the price intervals
623
827
  * this minimum applies to.
@@ -630,6 +834,25 @@ export namespace SubscriptionChangeRetrieveResponse {
630
834
  start_date: string;
631
835
  }
632
836
 
837
+ export namespace MinimumInterval {
838
+ export interface Filter {
839
+ /**
840
+ * The property of the price to filter on.
841
+ */
842
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
843
+
844
+ /**
845
+ * Should prices that match the filter be included or excluded.
846
+ */
847
+ operator: 'includes' | 'excludes';
848
+
849
+ /**
850
+ * The IDs or values that match this filter.
851
+ */
852
+ values: Array<string>;
853
+ }
854
+ }
855
+
633
856
  /**
634
857
  * A pending subscription change if one exists on this subscription.
635
858
  */
@@ -866,7 +1089,8 @@ export namespace SubscriptionChangeApplyResponse {
866
1089
  default_invoice_memo: string | null;
867
1090
 
868
1091
  /**
869
- * The discount intervals for this subscription sorted by the start_date.
1092
+ * @deprecated The discount intervals for this subscription sorted by the
1093
+ * start_date.
870
1094
  */
871
1095
  discount_intervals: Array<
872
1096
  | Subscription.AmountDiscountInterval
@@ -884,7 +1108,8 @@ export namespace SubscriptionChangeApplyResponse {
884
1108
  invoicing_threshold: string | null;
885
1109
 
886
1110
  /**
887
- * The maximum intervals for this subscription sorted by the start_date.
1111
+ * @deprecated The maximum intervals for this subscription sorted by the
1112
+ * start_date.
888
1113
  */
889
1114
  maximum_intervals: Array<Subscription.MaximumInterval>;
890
1115
 
@@ -897,10 +1122,16 @@ export namespace SubscriptionChangeApplyResponse {
897
1122
  metadata: Record<string, string>;
898
1123
 
899
1124
  /**
900
- * The minimum intervals for this subscription sorted by the start_date.
1125
+ * @deprecated The minimum intervals for this subscription sorted by the
1126
+ * start_date.
901
1127
  */
902
1128
  minimum_intervals: Array<Subscription.MinimumInterval>;
903
1129
 
1130
+ /**
1131
+ * The name of the subscription.
1132
+ */
1133
+ name: string;
1134
+
904
1135
  /**
905
1136
  * Determines the difference between the invoice issue date for subscription
906
1137
  * invoices as the date that they are due. A value of `0` here represents that the
@@ -920,7 +1151,7 @@ export namespace SubscriptionChangeApplyResponse {
920
1151
  * subscription. You can see more about how to configure prices in the
921
1152
  * [Price resource](/reference/price).
922
1153
  */
923
- plan: PlansAPI.Plan;
1154
+ plan: PlansAPI.Plan | null;
924
1155
 
925
1156
  /**
926
1157
  * The price intervals for this subscription.
@@ -980,10 +1211,15 @@ export namespace SubscriptionChangeApplyResponse {
980
1211
  adjustment_type: 'usage_discount';
981
1212
 
982
1213
  /**
983
- * The price IDs that this adjustment applies to.
1214
+ * @deprecated The price IDs that this adjustment applies to.
984
1215
  */
985
1216
  applies_to_price_ids: Array<string>;
986
1217
 
1218
+ /**
1219
+ * The filters that determine which prices to apply this adjustment to.
1220
+ */
1221
+ filters: Array<PlanPhaseUsageDiscountAdjustment.Filter>;
1222
+
987
1223
  /**
988
1224
  * True for adjustments that apply to an entire invocice, false for adjustments
989
1225
  * that apply to only one price.
@@ -1007,6 +1243,25 @@ export namespace SubscriptionChangeApplyResponse {
1007
1243
  usage_discount: number;
1008
1244
  }
1009
1245
 
1246
+ export namespace PlanPhaseUsageDiscountAdjustment {
1247
+ export interface Filter {
1248
+ /**
1249
+ * The property of the price to filter on.
1250
+ */
1251
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
1252
+
1253
+ /**
1254
+ * Should prices that match the filter be included or excluded.
1255
+ */
1256
+ operator: 'includes' | 'excludes';
1257
+
1258
+ /**
1259
+ * The IDs or values that match this filter.
1260
+ */
1261
+ values: Array<string>;
1262
+ }
1263
+ }
1264
+
1010
1265
  export interface PlanPhaseAmountDiscountAdjustment {
1011
1266
  id: string;
1012
1267
 
@@ -1019,10 +1274,15 @@ export namespace SubscriptionChangeApplyResponse {
1019
1274
  amount_discount: string;
1020
1275
 
1021
1276
  /**
1022
- * The price IDs that this adjustment applies to.
1277
+ * @deprecated The price IDs that this adjustment applies to.
1023
1278
  */
1024
1279
  applies_to_price_ids: Array<string>;
1025
1280
 
1281
+ /**
1282
+ * The filters that determine which prices to apply this adjustment to.
1283
+ */
1284
+ filters: Array<PlanPhaseAmountDiscountAdjustment.Filter>;
1285
+
1026
1286
  /**
1027
1287
  * True for adjustments that apply to an entire invocice, false for adjustments
1028
1288
  * that apply to only one price.
@@ -1040,16 +1300,40 @@ export namespace SubscriptionChangeApplyResponse {
1040
1300
  reason: string | null;
1041
1301
  }
1042
1302
 
1303
+ export namespace PlanPhaseAmountDiscountAdjustment {
1304
+ export interface Filter {
1305
+ /**
1306
+ * The property of the price to filter on.
1307
+ */
1308
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
1309
+
1310
+ /**
1311
+ * Should prices that match the filter be included or excluded.
1312
+ */
1313
+ operator: 'includes' | 'excludes';
1314
+
1315
+ /**
1316
+ * The IDs or values that match this filter.
1317
+ */
1318
+ values: Array<string>;
1319
+ }
1320
+ }
1321
+
1043
1322
  export interface PlanPhasePercentageDiscountAdjustment {
1044
1323
  id: string;
1045
1324
 
1046
1325
  adjustment_type: 'percentage_discount';
1047
1326
 
1048
1327
  /**
1049
- * The price IDs that this adjustment applies to.
1328
+ * @deprecated The price IDs that this adjustment applies to.
1050
1329
  */
1051
1330
  applies_to_price_ids: Array<string>;
1052
1331
 
1332
+ /**
1333
+ * The filters that determine which prices to apply this adjustment to.
1334
+ */
1335
+ filters: Array<PlanPhasePercentageDiscountAdjustment.Filter>;
1336
+
1053
1337
  /**
1054
1338
  * True for adjustments that apply to an entire invocice, false for adjustments
1055
1339
  * that apply to only one price.
@@ -1073,16 +1357,40 @@ export namespace SubscriptionChangeApplyResponse {
1073
1357
  reason: string | null;
1074
1358
  }
1075
1359
 
1360
+ export namespace PlanPhasePercentageDiscountAdjustment {
1361
+ export interface Filter {
1362
+ /**
1363
+ * The property of the price to filter on.
1364
+ */
1365
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
1366
+
1367
+ /**
1368
+ * Should prices that match the filter be included or excluded.
1369
+ */
1370
+ operator: 'includes' | 'excludes';
1371
+
1372
+ /**
1373
+ * The IDs or values that match this filter.
1374
+ */
1375
+ values: Array<string>;
1376
+ }
1377
+ }
1378
+
1076
1379
  export interface PlanPhaseMinimumAdjustment {
1077
1380
  id: string;
1078
1381
 
1079
1382
  adjustment_type: 'minimum';
1080
1383
 
1081
1384
  /**
1082
- * The price IDs that this adjustment applies to.
1385
+ * @deprecated The price IDs that this adjustment applies to.
1083
1386
  */
1084
1387
  applies_to_price_ids: Array<string>;
1085
1388
 
1389
+ /**
1390
+ * The filters that determine which prices to apply this adjustment to.
1391
+ */
1392
+ filters: Array<PlanPhaseMinimumAdjustment.Filter>;
1393
+
1086
1394
  /**
1087
1395
  * True for adjustments that apply to an entire invocice, false for adjustments
1088
1396
  * that apply to only one price.
@@ -1111,16 +1419,40 @@ export namespace SubscriptionChangeApplyResponse {
1111
1419
  reason: string | null;
1112
1420
  }
1113
1421
 
1422
+ export namespace PlanPhaseMinimumAdjustment {
1423
+ export interface Filter {
1424
+ /**
1425
+ * The property of the price to filter on.
1426
+ */
1427
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
1428
+
1429
+ /**
1430
+ * Should prices that match the filter be included or excluded.
1431
+ */
1432
+ operator: 'includes' | 'excludes';
1433
+
1434
+ /**
1435
+ * The IDs or values that match this filter.
1436
+ */
1437
+ values: Array<string>;
1438
+ }
1439
+ }
1440
+
1114
1441
  export interface PlanPhaseMaximumAdjustment {
1115
1442
  id: string;
1116
1443
 
1117
1444
  adjustment_type: 'maximum';
1118
1445
 
1119
1446
  /**
1120
- * The price IDs that this adjustment applies to.
1447
+ * @deprecated The price IDs that this adjustment applies to.
1121
1448
  */
1122
1449
  applies_to_price_ids: Array<string>;
1123
1450
 
1451
+ /**
1452
+ * The filters that determine which prices to apply this adjustment to.
1453
+ */
1454
+ filters: Array<PlanPhaseMaximumAdjustment.Filter>;
1455
+
1124
1456
  /**
1125
1457
  * True for adjustments that apply to an entire invocice, false for adjustments
1126
1458
  * that apply to only one price.
@@ -1143,6 +1475,25 @@ export namespace SubscriptionChangeApplyResponse {
1143
1475
  */
1144
1476
  reason: string | null;
1145
1477
  }
1478
+
1479
+ export namespace PlanPhaseMaximumAdjustment {
1480
+ export interface Filter {
1481
+ /**
1482
+ * The property of the price to filter on.
1483
+ */
1484
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
1485
+
1486
+ /**
1487
+ * Should prices that match the filter be included or excluded.
1488
+ */
1489
+ operator: 'includes' | 'excludes';
1490
+
1491
+ /**
1492
+ * The IDs or values that match this filter.
1493
+ */
1494
+ values: Array<string>;
1495
+ }
1496
+ }
1146
1497
  }
1147
1498
 
1148
1499
  export interface BillingCycleAnchorConfiguration {
@@ -1174,11 +1525,6 @@ export namespace SubscriptionChangeApplyResponse {
1174
1525
  */
1175
1526
  amount_discount: string;
1176
1527
 
1177
- /**
1178
- * The price ids that this discount interval applies to.
1179
- */
1180
- applies_to_price_ids: Array<string>;
1181
-
1182
1528
  /**
1183
1529
  * The price interval ids that this discount interval applies to.
1184
1530
  */
@@ -1191,18 +1537,37 @@ export namespace SubscriptionChangeApplyResponse {
1191
1537
  */
1192
1538
  end_date: string | null;
1193
1539
 
1540
+ /**
1541
+ * The filters that determine which prices this discount interval applies to.
1542
+ */
1543
+ filters: Array<AmountDiscountInterval.Filter>;
1544
+
1194
1545
  /**
1195
1546
  * The start date of the discount interval.
1196
1547
  */
1197
1548
  start_date: string;
1198
1549
  }
1199
1550
 
1200
- export interface PercentageDiscountInterval {
1201
- /**
1202
- * The price ids that this discount interval applies to.
1203
- */
1204
- applies_to_price_ids: Array<string>;
1551
+ export namespace AmountDiscountInterval {
1552
+ export interface Filter {
1553
+ /**
1554
+ * The property of the price to filter on.
1555
+ */
1556
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
1557
+
1558
+ /**
1559
+ * Should prices that match the filter be included or excluded.
1560
+ */
1561
+ operator: 'includes' | 'excludes';
1562
+
1563
+ /**
1564
+ * The IDs or values that match this filter.
1565
+ */
1566
+ values: Array<string>;
1567
+ }
1568
+ }
1205
1569
 
1570
+ export interface PercentageDiscountInterval {
1206
1571
  /**
1207
1572
  * The price interval ids that this discount interval applies to.
1208
1573
  */
@@ -1215,6 +1580,11 @@ export namespace SubscriptionChangeApplyResponse {
1215
1580
  */
1216
1581
  end_date: string | null;
1217
1582
 
1583
+ /**
1584
+ * The filters that determine which prices this discount interval applies to.
1585
+ */
1586
+ filters: Array<PercentageDiscountInterval.Filter>;
1587
+
1218
1588
  /**
1219
1589
  * Only available if discount_type is `percentage`.This is a number between 0
1220
1590
  * and 1.
@@ -1227,12 +1597,26 @@ export namespace SubscriptionChangeApplyResponse {
1227
1597
  start_date: string;
1228
1598
  }
1229
1599
 
1230
- export interface UsageDiscountInterval {
1231
- /**
1232
- * The price ids that this discount interval applies to.
1233
- */
1234
- applies_to_price_ids: Array<string>;
1600
+ export namespace PercentageDiscountInterval {
1601
+ export interface Filter {
1602
+ /**
1603
+ * The property of the price to filter on.
1604
+ */
1605
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
1235
1606
 
1607
+ /**
1608
+ * Should prices that match the filter be included or excluded.
1609
+ */
1610
+ operator: 'includes' | 'excludes';
1611
+
1612
+ /**
1613
+ * The IDs or values that match this filter.
1614
+ */
1615
+ values: Array<string>;
1616
+ }
1617
+ }
1618
+
1619
+ export interface UsageDiscountInterval {
1236
1620
  /**
1237
1621
  * The price interval ids that this discount interval applies to.
1238
1622
  */
@@ -1245,6 +1629,11 @@ export namespace SubscriptionChangeApplyResponse {
1245
1629
  */
1246
1630
  end_date: string | null;
1247
1631
 
1632
+ /**
1633
+ * The filters that determine which prices this discount interval applies to.
1634
+ */
1635
+ filters: Array<UsageDiscountInterval.Filter>;
1636
+
1248
1637
  /**
1249
1638
  * The start date of the discount interval.
1250
1639
  */
@@ -1257,6 +1646,25 @@ export namespace SubscriptionChangeApplyResponse {
1257
1646
  usage_discount: number;
1258
1647
  }
1259
1648
 
1649
+ export namespace UsageDiscountInterval {
1650
+ export interface Filter {
1651
+ /**
1652
+ * The property of the price to filter on.
1653
+ */
1654
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
1655
+
1656
+ /**
1657
+ * Should prices that match the filter be included or excluded.
1658
+ */
1659
+ operator: 'includes' | 'excludes';
1660
+
1661
+ /**
1662
+ * The IDs or values that match this filter.
1663
+ */
1664
+ values: Array<string>;
1665
+ }
1666
+ }
1667
+
1260
1668
  export interface FixedFeeQuantitySchedule {
1261
1669
  end_date: string | null;
1262
1670
 
@@ -1268,11 +1676,6 @@ export namespace SubscriptionChangeApplyResponse {
1268
1676
  }
1269
1677
 
1270
1678
  export interface MaximumInterval {
1271
- /**
1272
- * The price ids that this maximum interval applies to.
1273
- */
1274
- applies_to_price_ids: Array<string>;
1275
-
1276
1679
  /**
1277
1680
  * The price interval ids that this maximum interval applies to.
1278
1681
  */
@@ -1283,6 +1686,11 @@ export namespace SubscriptionChangeApplyResponse {
1283
1686
  */
1284
1687
  end_date: string | null;
1285
1688
 
1689
+ /**
1690
+ * The filters that determine which prices this maximum interval applies to.
1691
+ */
1692
+ filters: Array<MaximumInterval.Filter>;
1693
+
1286
1694
  /**
1287
1695
  * The maximum amount to charge in a given billing period for the price intervals
1288
1696
  * this transform applies to.
@@ -1295,12 +1703,26 @@ export namespace SubscriptionChangeApplyResponse {
1295
1703
  start_date: string;
1296
1704
  }
1297
1705
 
1298
- export interface MinimumInterval {
1299
- /**
1300
- * The price ids that this minimum interval applies to.
1301
- */
1302
- applies_to_price_ids: Array<string>;
1706
+ export namespace MaximumInterval {
1707
+ export interface Filter {
1708
+ /**
1709
+ * The property of the price to filter on.
1710
+ */
1711
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
1303
1712
 
1713
+ /**
1714
+ * Should prices that match the filter be included or excluded.
1715
+ */
1716
+ operator: 'includes' | 'excludes';
1717
+
1718
+ /**
1719
+ * The IDs or values that match this filter.
1720
+ */
1721
+ values: Array<string>;
1722
+ }
1723
+ }
1724
+
1725
+ export interface MinimumInterval {
1304
1726
  /**
1305
1727
  * The price interval ids that this minimum interval applies to.
1306
1728
  */
@@ -1311,6 +1733,11 @@ export namespace SubscriptionChangeApplyResponse {
1311
1733
  */
1312
1734
  end_date: string | null;
1313
1735
 
1736
+ /**
1737
+ * The filters that determine which prices this minimum interval applies to.
1738
+ */
1739
+ filters: Array<MinimumInterval.Filter>;
1740
+
1314
1741
  /**
1315
1742
  * The minimum amount to charge in a given billing period for the price intervals
1316
1743
  * this minimum applies to.
@@ -1323,6 +1750,25 @@ export namespace SubscriptionChangeApplyResponse {
1323
1750
  start_date: string;
1324
1751
  }
1325
1752
 
1753
+ export namespace MinimumInterval {
1754
+ export interface Filter {
1755
+ /**
1756
+ * The property of the price to filter on.
1757
+ */
1758
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
1759
+
1760
+ /**
1761
+ * Should prices that match the filter be included or excluded.
1762
+ */
1763
+ operator: 'includes' | 'excludes';
1764
+
1765
+ /**
1766
+ * The IDs or values that match this filter.
1767
+ */
1768
+ values: Array<string>;
1769
+ }
1770
+ }
1771
+
1326
1772
  /**
1327
1773
  * A pending subscription change if one exists on this subscription.
1328
1774
  */
@@ -1559,7 +2005,8 @@ export namespace SubscriptionChangeCancelResponse {
1559
2005
  default_invoice_memo: string | null;
1560
2006
 
1561
2007
  /**
1562
- * The discount intervals for this subscription sorted by the start_date.
2008
+ * @deprecated The discount intervals for this subscription sorted by the
2009
+ * start_date.
1563
2010
  */
1564
2011
  discount_intervals: Array<
1565
2012
  | Subscription.AmountDiscountInterval
@@ -1577,7 +2024,8 @@ export namespace SubscriptionChangeCancelResponse {
1577
2024
  invoicing_threshold: string | null;
1578
2025
 
1579
2026
  /**
1580
- * The maximum intervals for this subscription sorted by the start_date.
2027
+ * @deprecated The maximum intervals for this subscription sorted by the
2028
+ * start_date.
1581
2029
  */
1582
2030
  maximum_intervals: Array<Subscription.MaximumInterval>;
1583
2031
 
@@ -1590,10 +2038,16 @@ export namespace SubscriptionChangeCancelResponse {
1590
2038
  metadata: Record<string, string>;
1591
2039
 
1592
2040
  /**
1593
- * The minimum intervals for this subscription sorted by the start_date.
2041
+ * @deprecated The minimum intervals for this subscription sorted by the
2042
+ * start_date.
1594
2043
  */
1595
2044
  minimum_intervals: Array<Subscription.MinimumInterval>;
1596
2045
 
2046
+ /**
2047
+ * The name of the subscription.
2048
+ */
2049
+ name: string;
2050
+
1597
2051
  /**
1598
2052
  * Determines the difference between the invoice issue date for subscription
1599
2053
  * invoices as the date that they are due. A value of `0` here represents that the
@@ -1613,7 +2067,7 @@ export namespace SubscriptionChangeCancelResponse {
1613
2067
  * subscription. You can see more about how to configure prices in the
1614
2068
  * [Price resource](/reference/price).
1615
2069
  */
1616
- plan: PlansAPI.Plan;
2070
+ plan: PlansAPI.Plan | null;
1617
2071
 
1618
2072
  /**
1619
2073
  * The price intervals for this subscription.
@@ -1673,10 +2127,15 @@ export namespace SubscriptionChangeCancelResponse {
1673
2127
  adjustment_type: 'usage_discount';
1674
2128
 
1675
2129
  /**
1676
- * The price IDs that this adjustment applies to.
2130
+ * @deprecated The price IDs that this adjustment applies to.
1677
2131
  */
1678
2132
  applies_to_price_ids: Array<string>;
1679
2133
 
2134
+ /**
2135
+ * The filters that determine which prices to apply this adjustment to.
2136
+ */
2137
+ filters: Array<PlanPhaseUsageDiscountAdjustment.Filter>;
2138
+
1680
2139
  /**
1681
2140
  * True for adjustments that apply to an entire invocice, false for adjustments
1682
2141
  * that apply to only one price.
@@ -1700,6 +2159,25 @@ export namespace SubscriptionChangeCancelResponse {
1700
2159
  usage_discount: number;
1701
2160
  }
1702
2161
 
2162
+ export namespace PlanPhaseUsageDiscountAdjustment {
2163
+ export interface Filter {
2164
+ /**
2165
+ * The property of the price to filter on.
2166
+ */
2167
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
2168
+
2169
+ /**
2170
+ * Should prices that match the filter be included or excluded.
2171
+ */
2172
+ operator: 'includes' | 'excludes';
2173
+
2174
+ /**
2175
+ * The IDs or values that match this filter.
2176
+ */
2177
+ values: Array<string>;
2178
+ }
2179
+ }
2180
+
1703
2181
  export interface PlanPhaseAmountDiscountAdjustment {
1704
2182
  id: string;
1705
2183
 
@@ -1712,10 +2190,15 @@ export namespace SubscriptionChangeCancelResponse {
1712
2190
  amount_discount: string;
1713
2191
 
1714
2192
  /**
1715
- * The price IDs that this adjustment applies to.
2193
+ * @deprecated The price IDs that this adjustment applies to.
1716
2194
  */
1717
2195
  applies_to_price_ids: Array<string>;
1718
2196
 
2197
+ /**
2198
+ * The filters that determine which prices to apply this adjustment to.
2199
+ */
2200
+ filters: Array<PlanPhaseAmountDiscountAdjustment.Filter>;
2201
+
1719
2202
  /**
1720
2203
  * True for adjustments that apply to an entire invocice, false for adjustments
1721
2204
  * that apply to only one price.
@@ -1733,16 +2216,40 @@ export namespace SubscriptionChangeCancelResponse {
1733
2216
  reason: string | null;
1734
2217
  }
1735
2218
 
2219
+ export namespace PlanPhaseAmountDiscountAdjustment {
2220
+ export interface Filter {
2221
+ /**
2222
+ * The property of the price to filter on.
2223
+ */
2224
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
2225
+
2226
+ /**
2227
+ * Should prices that match the filter be included or excluded.
2228
+ */
2229
+ operator: 'includes' | 'excludes';
2230
+
2231
+ /**
2232
+ * The IDs or values that match this filter.
2233
+ */
2234
+ values: Array<string>;
2235
+ }
2236
+ }
2237
+
1736
2238
  export interface PlanPhasePercentageDiscountAdjustment {
1737
2239
  id: string;
1738
2240
 
1739
2241
  adjustment_type: 'percentage_discount';
1740
2242
 
1741
2243
  /**
1742
- * The price IDs that this adjustment applies to.
2244
+ * @deprecated The price IDs that this adjustment applies to.
1743
2245
  */
1744
2246
  applies_to_price_ids: Array<string>;
1745
2247
 
2248
+ /**
2249
+ * The filters that determine which prices to apply this adjustment to.
2250
+ */
2251
+ filters: Array<PlanPhasePercentageDiscountAdjustment.Filter>;
2252
+
1746
2253
  /**
1747
2254
  * True for adjustments that apply to an entire invocice, false for adjustments
1748
2255
  * that apply to only one price.
@@ -1766,16 +2273,40 @@ export namespace SubscriptionChangeCancelResponse {
1766
2273
  reason: string | null;
1767
2274
  }
1768
2275
 
2276
+ export namespace PlanPhasePercentageDiscountAdjustment {
2277
+ export interface Filter {
2278
+ /**
2279
+ * The property of the price to filter on.
2280
+ */
2281
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
2282
+
2283
+ /**
2284
+ * Should prices that match the filter be included or excluded.
2285
+ */
2286
+ operator: 'includes' | 'excludes';
2287
+
2288
+ /**
2289
+ * The IDs or values that match this filter.
2290
+ */
2291
+ values: Array<string>;
2292
+ }
2293
+ }
2294
+
1769
2295
  export interface PlanPhaseMinimumAdjustment {
1770
2296
  id: string;
1771
2297
 
1772
2298
  adjustment_type: 'minimum';
1773
2299
 
1774
2300
  /**
1775
- * The price IDs that this adjustment applies to.
2301
+ * @deprecated The price IDs that this adjustment applies to.
1776
2302
  */
1777
2303
  applies_to_price_ids: Array<string>;
1778
2304
 
2305
+ /**
2306
+ * The filters that determine which prices to apply this adjustment to.
2307
+ */
2308
+ filters: Array<PlanPhaseMinimumAdjustment.Filter>;
2309
+
1779
2310
  /**
1780
2311
  * True for adjustments that apply to an entire invocice, false for adjustments
1781
2312
  * that apply to only one price.
@@ -1804,16 +2335,40 @@ export namespace SubscriptionChangeCancelResponse {
1804
2335
  reason: string | null;
1805
2336
  }
1806
2337
 
2338
+ export namespace PlanPhaseMinimumAdjustment {
2339
+ export interface Filter {
2340
+ /**
2341
+ * The property of the price to filter on.
2342
+ */
2343
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
2344
+
2345
+ /**
2346
+ * Should prices that match the filter be included or excluded.
2347
+ */
2348
+ operator: 'includes' | 'excludes';
2349
+
2350
+ /**
2351
+ * The IDs or values that match this filter.
2352
+ */
2353
+ values: Array<string>;
2354
+ }
2355
+ }
2356
+
1807
2357
  export interface PlanPhaseMaximumAdjustment {
1808
2358
  id: string;
1809
2359
 
1810
2360
  adjustment_type: 'maximum';
1811
2361
 
1812
2362
  /**
1813
- * The price IDs that this adjustment applies to.
2363
+ * @deprecated The price IDs that this adjustment applies to.
1814
2364
  */
1815
2365
  applies_to_price_ids: Array<string>;
1816
2366
 
2367
+ /**
2368
+ * The filters that determine which prices to apply this adjustment to.
2369
+ */
2370
+ filters: Array<PlanPhaseMaximumAdjustment.Filter>;
2371
+
1817
2372
  /**
1818
2373
  * True for adjustments that apply to an entire invocice, false for adjustments
1819
2374
  * that apply to only one price.
@@ -1836,6 +2391,25 @@ export namespace SubscriptionChangeCancelResponse {
1836
2391
  */
1837
2392
  reason: string | null;
1838
2393
  }
2394
+
2395
+ export namespace PlanPhaseMaximumAdjustment {
2396
+ export interface Filter {
2397
+ /**
2398
+ * The property of the price to filter on.
2399
+ */
2400
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
2401
+
2402
+ /**
2403
+ * Should prices that match the filter be included or excluded.
2404
+ */
2405
+ operator: 'includes' | 'excludes';
2406
+
2407
+ /**
2408
+ * The IDs or values that match this filter.
2409
+ */
2410
+ values: Array<string>;
2411
+ }
2412
+ }
1839
2413
  }
1840
2414
 
1841
2415
  export interface BillingCycleAnchorConfiguration {
@@ -1867,11 +2441,6 @@ export namespace SubscriptionChangeCancelResponse {
1867
2441
  */
1868
2442
  amount_discount: string;
1869
2443
 
1870
- /**
1871
- * The price ids that this discount interval applies to.
1872
- */
1873
- applies_to_price_ids: Array<string>;
1874
-
1875
2444
  /**
1876
2445
  * The price interval ids that this discount interval applies to.
1877
2446
  */
@@ -1884,18 +2453,37 @@ export namespace SubscriptionChangeCancelResponse {
1884
2453
  */
1885
2454
  end_date: string | null;
1886
2455
 
2456
+ /**
2457
+ * The filters that determine which prices this discount interval applies to.
2458
+ */
2459
+ filters: Array<AmountDiscountInterval.Filter>;
2460
+
1887
2461
  /**
1888
2462
  * The start date of the discount interval.
1889
2463
  */
1890
2464
  start_date: string;
1891
2465
  }
1892
2466
 
1893
- export interface PercentageDiscountInterval {
1894
- /**
1895
- * The price ids that this discount interval applies to.
1896
- */
1897
- applies_to_price_ids: Array<string>;
2467
+ export namespace AmountDiscountInterval {
2468
+ export interface Filter {
2469
+ /**
2470
+ * The property of the price to filter on.
2471
+ */
2472
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
1898
2473
 
2474
+ /**
2475
+ * Should prices that match the filter be included or excluded.
2476
+ */
2477
+ operator: 'includes' | 'excludes';
2478
+
2479
+ /**
2480
+ * The IDs or values that match this filter.
2481
+ */
2482
+ values: Array<string>;
2483
+ }
2484
+ }
2485
+
2486
+ export interface PercentageDiscountInterval {
1899
2487
  /**
1900
2488
  * The price interval ids that this discount interval applies to.
1901
2489
  */
@@ -1908,6 +2496,11 @@ export namespace SubscriptionChangeCancelResponse {
1908
2496
  */
1909
2497
  end_date: string | null;
1910
2498
 
2499
+ /**
2500
+ * The filters that determine which prices this discount interval applies to.
2501
+ */
2502
+ filters: Array<PercentageDiscountInterval.Filter>;
2503
+
1911
2504
  /**
1912
2505
  * Only available if discount_type is `percentage`.This is a number between 0
1913
2506
  * and 1.
@@ -1920,12 +2513,26 @@ export namespace SubscriptionChangeCancelResponse {
1920
2513
  start_date: string;
1921
2514
  }
1922
2515
 
1923
- export interface UsageDiscountInterval {
1924
- /**
1925
- * The price ids that this discount interval applies to.
1926
- */
1927
- applies_to_price_ids: Array<string>;
2516
+ export namespace PercentageDiscountInterval {
2517
+ export interface Filter {
2518
+ /**
2519
+ * The property of the price to filter on.
2520
+ */
2521
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
1928
2522
 
2523
+ /**
2524
+ * Should prices that match the filter be included or excluded.
2525
+ */
2526
+ operator: 'includes' | 'excludes';
2527
+
2528
+ /**
2529
+ * The IDs or values that match this filter.
2530
+ */
2531
+ values: Array<string>;
2532
+ }
2533
+ }
2534
+
2535
+ export interface UsageDiscountInterval {
1929
2536
  /**
1930
2537
  * The price interval ids that this discount interval applies to.
1931
2538
  */
@@ -1938,6 +2545,11 @@ export namespace SubscriptionChangeCancelResponse {
1938
2545
  */
1939
2546
  end_date: string | null;
1940
2547
 
2548
+ /**
2549
+ * The filters that determine which prices this discount interval applies to.
2550
+ */
2551
+ filters: Array<UsageDiscountInterval.Filter>;
2552
+
1941
2553
  /**
1942
2554
  * The start date of the discount interval.
1943
2555
  */
@@ -1950,6 +2562,25 @@ export namespace SubscriptionChangeCancelResponse {
1950
2562
  usage_discount: number;
1951
2563
  }
1952
2564
 
2565
+ export namespace UsageDiscountInterval {
2566
+ export interface Filter {
2567
+ /**
2568
+ * The property of the price to filter on.
2569
+ */
2570
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
2571
+
2572
+ /**
2573
+ * Should prices that match the filter be included or excluded.
2574
+ */
2575
+ operator: 'includes' | 'excludes';
2576
+
2577
+ /**
2578
+ * The IDs or values that match this filter.
2579
+ */
2580
+ values: Array<string>;
2581
+ }
2582
+ }
2583
+
1953
2584
  export interface FixedFeeQuantitySchedule {
1954
2585
  end_date: string | null;
1955
2586
 
@@ -1961,11 +2592,6 @@ export namespace SubscriptionChangeCancelResponse {
1961
2592
  }
1962
2593
 
1963
2594
  export interface MaximumInterval {
1964
- /**
1965
- * The price ids that this maximum interval applies to.
1966
- */
1967
- applies_to_price_ids: Array<string>;
1968
-
1969
2595
  /**
1970
2596
  * The price interval ids that this maximum interval applies to.
1971
2597
  */
@@ -1976,6 +2602,11 @@ export namespace SubscriptionChangeCancelResponse {
1976
2602
  */
1977
2603
  end_date: string | null;
1978
2604
 
2605
+ /**
2606
+ * The filters that determine which prices this maximum interval applies to.
2607
+ */
2608
+ filters: Array<MaximumInterval.Filter>;
2609
+
1979
2610
  /**
1980
2611
  * The maximum amount to charge in a given billing period for the price intervals
1981
2612
  * this transform applies to.
@@ -1988,12 +2619,26 @@ export namespace SubscriptionChangeCancelResponse {
1988
2619
  start_date: string;
1989
2620
  }
1990
2621
 
1991
- export interface MinimumInterval {
1992
- /**
1993
- * The price ids that this minimum interval applies to.
1994
- */
1995
- applies_to_price_ids: Array<string>;
2622
+ export namespace MaximumInterval {
2623
+ export interface Filter {
2624
+ /**
2625
+ * The property of the price to filter on.
2626
+ */
2627
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
2628
+
2629
+ /**
2630
+ * Should prices that match the filter be included or excluded.
2631
+ */
2632
+ operator: 'includes' | 'excludes';
2633
+
2634
+ /**
2635
+ * The IDs or values that match this filter.
2636
+ */
2637
+ values: Array<string>;
2638
+ }
2639
+ }
1996
2640
 
2641
+ export interface MinimumInterval {
1997
2642
  /**
1998
2643
  * The price interval ids that this minimum interval applies to.
1999
2644
  */
@@ -2004,6 +2649,11 @@ export namespace SubscriptionChangeCancelResponse {
2004
2649
  */
2005
2650
  end_date: string | null;
2006
2651
 
2652
+ /**
2653
+ * The filters that determine which prices this minimum interval applies to.
2654
+ */
2655
+ filters: Array<MinimumInterval.Filter>;
2656
+
2007
2657
  /**
2008
2658
  * The minimum amount to charge in a given billing period for the price intervals
2009
2659
  * this minimum applies to.
@@ -2016,6 +2666,25 @@ export namespace SubscriptionChangeCancelResponse {
2016
2666
  start_date: string;
2017
2667
  }
2018
2668
 
2669
+ export namespace MinimumInterval {
2670
+ export interface Filter {
2671
+ /**
2672
+ * The property of the price to filter on.
2673
+ */
2674
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
2675
+
2676
+ /**
2677
+ * Should prices that match the filter be included or excluded.
2678
+ */
2679
+ operator: 'includes' | 'excludes';
2680
+
2681
+ /**
2682
+ * The IDs or values that match this filter.
2683
+ */
2684
+ values: Array<string>;
2685
+ }
2686
+ }
2687
+
2019
2688
  /**
2020
2689
  * A pending subscription change if one exists on this subscription.
2021
2690
  */