orb-billing 6.9.0 → 6.11.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 (51) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/package.json +1 -1
  3. package/resources/beta/beta.d.mts +252 -2
  4. package/resources/beta/beta.d.mts.map +1 -1
  5. package/resources/beta/beta.d.ts +252 -2
  6. package/resources/beta/beta.d.ts.map +1 -1
  7. package/resources/beta/beta.js.map +1 -1
  8. package/resources/beta/beta.mjs.map +1 -1
  9. package/resources/beta/external-plan-id.d.mts +252 -2
  10. package/resources/beta/external-plan-id.d.mts.map +1 -1
  11. package/resources/beta/external-plan-id.d.ts +252 -2
  12. package/resources/beta/external-plan-id.d.ts.map +1 -1
  13. package/resources/plans/plans.d.mts +126 -1
  14. package/resources/plans/plans.d.mts.map +1 -1
  15. package/resources/plans/plans.d.ts +126 -1
  16. package/resources/plans/plans.d.ts.map +1 -1
  17. package/resources/plans/plans.js.map +1 -1
  18. package/resources/plans/plans.mjs.map +1 -1
  19. package/resources/prices/prices.d.mts +360 -3
  20. package/resources/prices/prices.d.mts.map +1 -1
  21. package/resources/prices/prices.d.ts +360 -3
  22. package/resources/prices/prices.d.ts.map +1 -1
  23. package/resources/prices/prices.js.map +1 -1
  24. package/resources/prices/prices.mjs.map +1 -1
  25. package/resources/shared.d.mts +145 -1
  26. package/resources/shared.d.mts.map +1 -1
  27. package/resources/shared.d.ts +145 -1
  28. package/resources/shared.d.ts.map +1 -1
  29. package/resources/subscriptions.d.mts +695 -43
  30. package/resources/subscriptions.d.mts.map +1 -1
  31. package/resources/subscriptions.d.ts +695 -43
  32. package/resources/subscriptions.d.ts.map +1 -1
  33. package/resources/subscriptions.js +39 -6
  34. package/resources/subscriptions.js.map +1 -1
  35. package/resources/subscriptions.mjs +39 -6
  36. package/resources/subscriptions.mjs.map +1 -1
  37. package/src/resources/beta/beta.ts +298 -0
  38. package/src/resources/beta/external-plan-id.ts +298 -0
  39. package/src/resources/plans/plans.ts +149 -0
  40. package/src/resources/prices/prices.ts +426 -0
  41. package/src/resources/shared.ts +185 -0
  42. package/src/resources/subscriptions.ts +890 -119
  43. package/src/version.ts +1 -1
  44. package/version.d.mts +1 -1
  45. package/version.d.mts.map +1 -1
  46. package/version.d.ts +1 -1
  47. package/version.d.ts.map +1 -1
  48. package/version.js +1 -1
  49. package/version.js.map +1 -1
  50. package/version.mjs +1 -1
  51. package/version.mjs.map +1 -1
@@ -774,6 +774,17 @@ export declare class Subscriptions extends APIResource {
774
774
  * Note that one of `plan_id` or `external_plan_id` is required in the request body
775
775
  * for this operation.
776
776
  *
777
+ * ## Interaction with scheduled cancellations
778
+ *
779
+ * Scheduling a plan change also unschedules a pending cancellation, as long as the
780
+ * cancellation date is on or after the plan change date: Orb honors the plan
781
+ * change over the scheduled cancellation, and the subscription continues on the
782
+ * new plan. Scheduling a plan change after the subscription's end date returns a
783
+ * validation error instead.
784
+ *
785
+ * Any plan changes already scheduled at or after the new plan change's date are
786
+ * unscheduled and replaced by it.
787
+ *
777
788
  * ## Customize your customer's subscriptions
778
789
  *
779
790
  * Prices and adjustments in a plan can be added, removed, or replaced on the
@@ -951,11 +962,19 @@ export declare class Subscriptions extends APIResource {
951
962
  * cancellation. This operation will turn on auto-renew, ensuring that the
952
963
  * subscription does not end at the currently scheduled cancellation time.
953
964
  *
954
- * Note: uncancellation is a lossy operation. Price intervals that were cut short
955
- * by the cancellation are extended to infinity (original end dates are lost), and
956
- * future intervals or phases scheduled after the cancellation time are permanently
957
- * deleted. For complex subscriptions with phases or scheduled plan changes,
958
- * consider creating a new plan change instead of uncancelling.
965
+ * A cancellation that has already taken effect cannot be unscheduled. This
966
+ * includes backdated cancellations: once the subscription's end date is in the
967
+ * past, this endpoint returns a validation error.
968
+ *
969
+ * Note: uncancellation is a lossy operation. Price and adjustment intervals that
970
+ * were cut short by the cancellation are extended to infinity (original end dates
971
+ * are lost), and future intervals or phases scheduled after the cancellation time
972
+ * are permanently deleted. For complex subscriptions with phases or scheduled plan
973
+ * changes, consider creating a new plan change instead of uncancelling.
974
+ *
975
+ * If the scheduled cancellation already produced invoices or credit notes (for
976
+ * example, a proration refund credit note for an in-advance fee), uncancelling
977
+ * voids and reissues them as needed to match the subscription's new state.
959
978
  *
960
979
  * @example
961
980
  * ```ts
@@ -985,7 +1004,21 @@ export declare class Subscriptions extends APIResource {
985
1004
  unscheduleFixedFeeQuantityUpdates(subscriptionID: string, body: SubscriptionUnscheduleFixedFeeQuantityUpdatesParams, options?: RequestOptions): APIPromise<SubscriptionChangesAPI.MutatedSubscription>;
986
1005
  /**
987
1006
  * This endpoint can be used to unschedule any pending plan changes on an existing
988
- * subscription. When called, all upcoming plan changes will be unscheduled.
1007
+ * subscription. When called, all upcoming plan changes will be unscheduled; it is
1008
+ * not possible to unschedule a single plan change if multiple are scheduled.
1009
+ *
1010
+ * Note: unscheduling a plan change is a lossy operation, with the same semantics
1011
+ * as
1012
+ * [unscheduling a cancellation](/api-reference/subscription/unschedule-subscription-cancellation).
1013
+ * Prices and adjustments on the current plan that were scheduled to end at the
1014
+ * plan change time are extended to infinity (original end dates are lost), and
1015
+ * anything scheduled to start after the plan change time is permanently deleted.
1016
+ * Coupons redeemed as part of an unscheduled plan change are released and can be
1017
+ * redeemed again.
1018
+ *
1019
+ * A scheduled cancellation is not affected by this operation: if the subscription
1020
+ * has both a pending plan change and a scheduled cancellation, unscheduling the
1021
+ * plan change leaves the cancellation in place.
989
1022
  *
990
1023
  * @example
991
1024
  * ```ts
@@ -4389,7 +4422,7 @@ export declare namespace SubscriptionCreateParams {
4389
4422
  /**
4390
4423
  * New subscription price request body params.
4391
4424
  */
4392
- price?: SubscriptionsAPI.NewSubscriptionUnitPrice | SubscriptionsAPI.NewSubscriptionTieredPrice | SubscriptionsAPI.NewSubscriptionBulkPrice | AddPrice.NewSubscriptionBulkWithFiltersPrice | SubscriptionsAPI.NewSubscriptionPackagePrice | SubscriptionsAPI.NewSubscriptionMatrixPrice | SubscriptionsAPI.NewSubscriptionThresholdTotalAmountPrice | SubscriptionsAPI.NewSubscriptionTieredPackagePrice | SubscriptionsAPI.NewSubscriptionTieredWithMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPrice | SubscriptionsAPI.NewSubscriptionTieredPackageWithMinimumPrice | SubscriptionsAPI.NewSubscriptionPackageWithAllocationPrice | SubscriptionsAPI.NewSubscriptionUnitWithPercentPrice | SubscriptionsAPI.NewSubscriptionMatrixWithAllocationPrice | AddPrice.NewSubscriptionMatrixWithThresholdDiscountsPrice | AddPrice.NewSubscriptionTieredWithProrationPrice | SubscriptionsAPI.NewSubscriptionUnitWithProrationPrice | SubscriptionsAPI.NewSubscriptionGroupedAllocationPrice | SubscriptionsAPI.NewSubscriptionBulkWithProrationPrice | SubscriptionsAPI.NewSubscriptionGroupedWithProratedMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedWithMeteredMinimumPrice | AddPrice.NewSubscriptionGroupedWithMinMaxThresholdsPrice | SubscriptionsAPI.NewSubscriptionMatrixWithDisplayNamePrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPackagePrice | SubscriptionsAPI.NewSubscriptionMaxGroupTieredPackagePrice | SubscriptionsAPI.NewSubscriptionScalableMatrixWithUnitPricingPrice | SubscriptionsAPI.NewSubscriptionScalableMatrixWithTieredPricingPrice | SubscriptionsAPI.NewSubscriptionCumulativeGroupedBulkPrice | AddPrice.NewSubscriptionCumulativeGroupedAllocationPrice | AddPrice.NewSubscriptionDailyCreditAllowancePrice | AddPrice.NewSubscriptionMeteredAllowancePrice | SubscriptionsAPI.NewSubscriptionMinimumCompositePrice | AddPrice.NewSubscriptionPercentCompositePrice | AddPrice.NewSubscriptionEventOutputPrice | null;
4425
+ price?: SubscriptionsAPI.NewSubscriptionUnitPrice | SubscriptionsAPI.NewSubscriptionTieredPrice | SubscriptionsAPI.NewSubscriptionBulkPrice | AddPrice.NewSubscriptionBulkWithFiltersPrice | SubscriptionsAPI.NewSubscriptionPackagePrice | SubscriptionsAPI.NewSubscriptionMatrixPrice | SubscriptionsAPI.NewSubscriptionThresholdTotalAmountPrice | SubscriptionsAPI.NewSubscriptionTieredPackagePrice | SubscriptionsAPI.NewSubscriptionTieredWithMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPrice | AddPrice.NewSubscriptionGroupedTieredMatrixPrice | SubscriptionsAPI.NewSubscriptionTieredPackageWithMinimumPrice | SubscriptionsAPI.NewSubscriptionPackageWithAllocationPrice | SubscriptionsAPI.NewSubscriptionUnitWithPercentPrice | SubscriptionsAPI.NewSubscriptionMatrixWithAllocationPrice | AddPrice.NewSubscriptionMatrixWithThresholdDiscountsPrice | AddPrice.NewSubscriptionTieredWithProrationPrice | SubscriptionsAPI.NewSubscriptionUnitWithProrationPrice | SubscriptionsAPI.NewSubscriptionGroupedAllocationPrice | SubscriptionsAPI.NewSubscriptionBulkWithProrationPrice | SubscriptionsAPI.NewSubscriptionGroupedWithProratedMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedWithMeteredMinimumPrice | AddPrice.NewSubscriptionGroupedWithMinMaxThresholdsPrice | SubscriptionsAPI.NewSubscriptionMatrixWithDisplayNamePrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPackagePrice | SubscriptionsAPI.NewSubscriptionMaxGroupTieredPackagePrice | SubscriptionsAPI.NewSubscriptionScalableMatrixWithUnitPricingPrice | SubscriptionsAPI.NewSubscriptionScalableMatrixWithTieredPricingPrice | SubscriptionsAPI.NewSubscriptionCumulativeGroupedBulkPrice | AddPrice.NewSubscriptionCumulativeGroupedAllocationPrice | AddPrice.NewSubscriptionDailyCreditAllowancePrice | AddPrice.NewSubscriptionMeteredAllowancePrice | SubscriptionsAPI.NewSubscriptionMinimumCompositePrice | AddPrice.NewSubscriptionPercentCompositePrice | AddPrice.NewSubscriptionEventOutputPrice | null;
4393
4426
  /**
4394
4427
  * The id of the price to add to the subscription.
4395
4428
  */
@@ -4534,6 +4567,131 @@ export declare namespace SubscriptionCreateParams {
4534
4567
  }
4535
4568
  }
4536
4569
  }
4570
+ interface NewSubscriptionGroupedTieredMatrixPrice {
4571
+ /**
4572
+ * The cadence to bill for this price on.
4573
+ */
4574
+ cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
4575
+ /**
4576
+ * Configuration for grouped_tiered_matrix pricing
4577
+ */
4578
+ grouped_tiered_matrix_config: NewSubscriptionGroupedTieredMatrixPrice.GroupedTieredMatrixConfig;
4579
+ /**
4580
+ * The id of the item the price will be associated with.
4581
+ */
4582
+ item_id: string;
4583
+ /**
4584
+ * The pricing model type
4585
+ */
4586
+ model_type: 'grouped_tiered_matrix';
4587
+ /**
4588
+ * The name of the price.
4589
+ */
4590
+ name: string;
4591
+ /**
4592
+ * The id of the billable metric for the price. Only needed if the price is
4593
+ * usage-based.
4594
+ */
4595
+ billable_metric_id?: string | null;
4596
+ /**
4597
+ * If the Price represents a fixed cost, the price will be billed in-advance if
4598
+ * this is true, and in-arrears if this is false.
4599
+ */
4600
+ billed_in_advance?: boolean | null;
4601
+ /**
4602
+ * For custom cadence: specifies the duration of the billing period in days or
4603
+ * months.
4604
+ */
4605
+ billing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
4606
+ /**
4607
+ * The per unit conversion rate of the price currency to the invoicing currency.
4608
+ */
4609
+ conversion_rate?: number | null;
4610
+ /**
4611
+ * The configuration for the rate of the price currency to the invoicing currency.
4612
+ */
4613
+ conversion_rate_config?: Shared.UnitConversionRateConfig | Shared.TieredConversionRateConfig | null;
4614
+ /**
4615
+ * An ISO 4217 currency string, or custom pricing unit identifier, in which this
4616
+ * price is billed.
4617
+ */
4618
+ currency?: string | null;
4619
+ /**
4620
+ * For dimensional price: specifies a price group and dimension values
4621
+ */
4622
+ dimensional_price_configuration?: Shared.NewDimensionalPriceConfiguration | null;
4623
+ /**
4624
+ * An alias for the price.
4625
+ */
4626
+ external_price_id?: string | null;
4627
+ /**
4628
+ * If the Price represents a fixed cost, this represents the quantity of units
4629
+ * applied.
4630
+ */
4631
+ fixed_price_quantity?: number | null;
4632
+ /**
4633
+ * The property used to group this price on an invoice
4634
+ */
4635
+ invoice_grouping_key?: string | null;
4636
+ /**
4637
+ * Within each billing cycle, specifies the cadence at which invoices are produced.
4638
+ * If unspecified, a single invoice is produced per billing cycle.
4639
+ */
4640
+ invoicing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
4641
+ /**
4642
+ * The ID of the license type to associate with this price.
4643
+ */
4644
+ license_type_id?: string | null;
4645
+ /**
4646
+ * User-specified key/value pairs for the resource. Individual keys can be removed
4647
+ * by setting the value to `null`, and the entire metadata mapping can be cleared
4648
+ * by setting `metadata` to `null`.
4649
+ */
4650
+ metadata?: {
4651
+ [key: string]: string | null;
4652
+ } | null;
4653
+ /**
4654
+ * A transient ID that can be used to reference this price when adding adjustments
4655
+ * in the same API call.
4656
+ */
4657
+ reference_id?: string | null;
4658
+ }
4659
+ namespace NewSubscriptionGroupedTieredMatrixPrice {
4660
+ /**
4661
+ * Configuration for grouped_tiered_matrix pricing
4662
+ */
4663
+ interface GroupedTieredMatrixConfig {
4664
+ /**
4665
+ * Per unit rate for usage whose dimension value has no configured tiers
4666
+ */
4667
+ default_unit_amount: string;
4668
+ /**
4669
+ * The billable metric property used to group usage before tiering
4670
+ */
4671
+ dimension: string;
4672
+ /**
4673
+ * Graduated tiers keyed by dimension value; usage for a value is tiered only
4674
+ * against its own rows
4675
+ */
4676
+ tiers: Array<GroupedTieredMatrixConfig.Tier>;
4677
+ }
4678
+ namespace GroupedTieredMatrixConfig {
4679
+ /**
4680
+ * Configuration for a single tier scoped to a dimension value
4681
+ */
4682
+ interface Tier {
4683
+ /**
4684
+ * The dimension value this tier applies to
4685
+ */
4686
+ dimension_value: string;
4687
+ tier_lower_bound: string;
4688
+ /**
4689
+ * Per unit amount
4690
+ */
4691
+ unit_amount: string;
4692
+ }
4693
+ }
4694
+ }
4537
4695
  interface NewSubscriptionMatrixWithThresholdDiscountsPrice {
4538
4696
  /**
4539
4697
  * The cadence to bill for this price on.
@@ -5632,7 +5790,7 @@ export declare namespace SubscriptionCreateParams {
5632
5790
  /**
5633
5791
  * New subscription price request body params.
5634
5792
  */
5635
- price?: SubscriptionsAPI.NewSubscriptionUnitPrice | SubscriptionsAPI.NewSubscriptionTieredPrice | SubscriptionsAPI.NewSubscriptionBulkPrice | ReplacePrice.NewSubscriptionBulkWithFiltersPrice | SubscriptionsAPI.NewSubscriptionPackagePrice | SubscriptionsAPI.NewSubscriptionMatrixPrice | SubscriptionsAPI.NewSubscriptionThresholdTotalAmountPrice | SubscriptionsAPI.NewSubscriptionTieredPackagePrice | SubscriptionsAPI.NewSubscriptionTieredWithMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPrice | SubscriptionsAPI.NewSubscriptionTieredPackageWithMinimumPrice | SubscriptionsAPI.NewSubscriptionPackageWithAllocationPrice | SubscriptionsAPI.NewSubscriptionUnitWithPercentPrice | SubscriptionsAPI.NewSubscriptionMatrixWithAllocationPrice | ReplacePrice.NewSubscriptionMatrixWithThresholdDiscountsPrice | ReplacePrice.NewSubscriptionTieredWithProrationPrice | SubscriptionsAPI.NewSubscriptionUnitWithProrationPrice | SubscriptionsAPI.NewSubscriptionGroupedAllocationPrice | SubscriptionsAPI.NewSubscriptionBulkWithProrationPrice | SubscriptionsAPI.NewSubscriptionGroupedWithProratedMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedWithMeteredMinimumPrice | ReplacePrice.NewSubscriptionGroupedWithMinMaxThresholdsPrice | SubscriptionsAPI.NewSubscriptionMatrixWithDisplayNamePrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPackagePrice | SubscriptionsAPI.NewSubscriptionMaxGroupTieredPackagePrice | SubscriptionsAPI.NewSubscriptionScalableMatrixWithUnitPricingPrice | SubscriptionsAPI.NewSubscriptionScalableMatrixWithTieredPricingPrice | SubscriptionsAPI.NewSubscriptionCumulativeGroupedBulkPrice | ReplacePrice.NewSubscriptionCumulativeGroupedAllocationPrice | ReplacePrice.NewSubscriptionDailyCreditAllowancePrice | ReplacePrice.NewSubscriptionMeteredAllowancePrice | SubscriptionsAPI.NewSubscriptionMinimumCompositePrice | ReplacePrice.NewSubscriptionPercentCompositePrice | ReplacePrice.NewSubscriptionEventOutputPrice | null;
5793
+ price?: SubscriptionsAPI.NewSubscriptionUnitPrice | SubscriptionsAPI.NewSubscriptionTieredPrice | SubscriptionsAPI.NewSubscriptionBulkPrice | ReplacePrice.NewSubscriptionBulkWithFiltersPrice | SubscriptionsAPI.NewSubscriptionPackagePrice | SubscriptionsAPI.NewSubscriptionMatrixPrice | SubscriptionsAPI.NewSubscriptionThresholdTotalAmountPrice | SubscriptionsAPI.NewSubscriptionTieredPackagePrice | SubscriptionsAPI.NewSubscriptionTieredWithMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPrice | ReplacePrice.NewSubscriptionGroupedTieredMatrixPrice | SubscriptionsAPI.NewSubscriptionTieredPackageWithMinimumPrice | SubscriptionsAPI.NewSubscriptionPackageWithAllocationPrice | SubscriptionsAPI.NewSubscriptionUnitWithPercentPrice | SubscriptionsAPI.NewSubscriptionMatrixWithAllocationPrice | ReplacePrice.NewSubscriptionMatrixWithThresholdDiscountsPrice | ReplacePrice.NewSubscriptionTieredWithProrationPrice | SubscriptionsAPI.NewSubscriptionUnitWithProrationPrice | SubscriptionsAPI.NewSubscriptionGroupedAllocationPrice | SubscriptionsAPI.NewSubscriptionBulkWithProrationPrice | SubscriptionsAPI.NewSubscriptionGroupedWithProratedMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedWithMeteredMinimumPrice | ReplacePrice.NewSubscriptionGroupedWithMinMaxThresholdsPrice | SubscriptionsAPI.NewSubscriptionMatrixWithDisplayNamePrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPackagePrice | SubscriptionsAPI.NewSubscriptionMaxGroupTieredPackagePrice | SubscriptionsAPI.NewSubscriptionScalableMatrixWithUnitPricingPrice | SubscriptionsAPI.NewSubscriptionScalableMatrixWithTieredPricingPrice | SubscriptionsAPI.NewSubscriptionCumulativeGroupedBulkPrice | ReplacePrice.NewSubscriptionCumulativeGroupedAllocationPrice | ReplacePrice.NewSubscriptionDailyCreditAllowancePrice | ReplacePrice.NewSubscriptionMeteredAllowancePrice | SubscriptionsAPI.NewSubscriptionMinimumCompositePrice | ReplacePrice.NewSubscriptionPercentCompositePrice | ReplacePrice.NewSubscriptionEventOutputPrice | null;
5636
5794
  /**
5637
5795
  * The id of the price to add to the subscription.
5638
5796
  */
@@ -5771,6 +5929,131 @@ export declare namespace SubscriptionCreateParams {
5771
5929
  }
5772
5930
  }
5773
5931
  }
5932
+ interface NewSubscriptionGroupedTieredMatrixPrice {
5933
+ /**
5934
+ * The cadence to bill for this price on.
5935
+ */
5936
+ cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
5937
+ /**
5938
+ * Configuration for grouped_tiered_matrix pricing
5939
+ */
5940
+ grouped_tiered_matrix_config: NewSubscriptionGroupedTieredMatrixPrice.GroupedTieredMatrixConfig;
5941
+ /**
5942
+ * The id of the item the price will be associated with.
5943
+ */
5944
+ item_id: string;
5945
+ /**
5946
+ * The pricing model type
5947
+ */
5948
+ model_type: 'grouped_tiered_matrix';
5949
+ /**
5950
+ * The name of the price.
5951
+ */
5952
+ name: string;
5953
+ /**
5954
+ * The id of the billable metric for the price. Only needed if the price is
5955
+ * usage-based.
5956
+ */
5957
+ billable_metric_id?: string | null;
5958
+ /**
5959
+ * If the Price represents a fixed cost, the price will be billed in-advance if
5960
+ * this is true, and in-arrears if this is false.
5961
+ */
5962
+ billed_in_advance?: boolean | null;
5963
+ /**
5964
+ * For custom cadence: specifies the duration of the billing period in days or
5965
+ * months.
5966
+ */
5967
+ billing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
5968
+ /**
5969
+ * The per unit conversion rate of the price currency to the invoicing currency.
5970
+ */
5971
+ conversion_rate?: number | null;
5972
+ /**
5973
+ * The configuration for the rate of the price currency to the invoicing currency.
5974
+ */
5975
+ conversion_rate_config?: Shared.UnitConversionRateConfig | Shared.TieredConversionRateConfig | null;
5976
+ /**
5977
+ * An ISO 4217 currency string, or custom pricing unit identifier, in which this
5978
+ * price is billed.
5979
+ */
5980
+ currency?: string | null;
5981
+ /**
5982
+ * For dimensional price: specifies a price group and dimension values
5983
+ */
5984
+ dimensional_price_configuration?: Shared.NewDimensionalPriceConfiguration | null;
5985
+ /**
5986
+ * An alias for the price.
5987
+ */
5988
+ external_price_id?: string | null;
5989
+ /**
5990
+ * If the Price represents a fixed cost, this represents the quantity of units
5991
+ * applied.
5992
+ */
5993
+ fixed_price_quantity?: number | null;
5994
+ /**
5995
+ * The property used to group this price on an invoice
5996
+ */
5997
+ invoice_grouping_key?: string | null;
5998
+ /**
5999
+ * Within each billing cycle, specifies the cadence at which invoices are produced.
6000
+ * If unspecified, a single invoice is produced per billing cycle.
6001
+ */
6002
+ invoicing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
6003
+ /**
6004
+ * The ID of the license type to associate with this price.
6005
+ */
6006
+ license_type_id?: string | null;
6007
+ /**
6008
+ * User-specified key/value pairs for the resource. Individual keys can be removed
6009
+ * by setting the value to `null`, and the entire metadata mapping can be cleared
6010
+ * by setting `metadata` to `null`.
6011
+ */
6012
+ metadata?: {
6013
+ [key: string]: string | null;
6014
+ } | null;
6015
+ /**
6016
+ * A transient ID that can be used to reference this price when adding adjustments
6017
+ * in the same API call.
6018
+ */
6019
+ reference_id?: string | null;
6020
+ }
6021
+ namespace NewSubscriptionGroupedTieredMatrixPrice {
6022
+ /**
6023
+ * Configuration for grouped_tiered_matrix pricing
6024
+ */
6025
+ interface GroupedTieredMatrixConfig {
6026
+ /**
6027
+ * Per unit rate for usage whose dimension value has no configured tiers
6028
+ */
6029
+ default_unit_amount: string;
6030
+ /**
6031
+ * The billable metric property used to group usage before tiering
6032
+ */
6033
+ dimension: string;
6034
+ /**
6035
+ * Graduated tiers keyed by dimension value; usage for a value is tiered only
6036
+ * against its own rows
6037
+ */
6038
+ tiers: Array<GroupedTieredMatrixConfig.Tier>;
6039
+ }
6040
+ namespace GroupedTieredMatrixConfig {
6041
+ /**
6042
+ * Configuration for a single tier scoped to a dimension value
6043
+ */
6044
+ interface Tier {
6045
+ /**
6046
+ * The dimension value this tier applies to
6047
+ */
6048
+ dimension_value: string;
6049
+ tier_lower_bound: string;
6050
+ /**
6051
+ * Per unit amount
6052
+ */
6053
+ unit_amount: string;
6054
+ }
6055
+ }
6056
+ }
5774
6057
  interface NewSubscriptionMatrixWithThresholdDiscountsPrice {
5775
6058
  /**
5776
6059
  * The cadence to bill for this price on.
@@ -6958,7 +7241,7 @@ export declare namespace SubscriptionPriceIntervalsParams {
6958
7241
  /**
6959
7242
  * New floating price request body params.
6960
7243
  */
6961
- price?: Shared.NewFloatingUnitPrice | Shared.NewFloatingTieredPrice | Shared.NewFloatingBulkPrice | Add.NewFloatingBulkWithFiltersPrice | Shared.NewFloatingPackagePrice | Shared.NewFloatingMatrixPrice | Shared.NewFloatingThresholdTotalAmountPrice | Shared.NewFloatingTieredPackagePrice | Shared.NewFloatingTieredWithMinimumPrice | Shared.NewFloatingGroupedTieredPrice | Shared.NewFloatingTieredPackageWithMinimumPrice | Shared.NewFloatingPackageWithAllocationPrice | Shared.NewFloatingUnitWithPercentPrice | Shared.NewFloatingMatrixWithAllocationPrice | Add.NewFloatingMatrixWithThresholdDiscountsPrice | Shared.NewFloatingTieredWithProrationPrice | Shared.NewFloatingUnitWithProrationPrice | Shared.NewFloatingGroupedAllocationPrice | Shared.NewFloatingBulkWithProrationPrice | Shared.NewFloatingGroupedWithProratedMinimumPrice | Shared.NewFloatingGroupedWithMeteredMinimumPrice | Add.NewFloatingGroupedWithMinMaxThresholdsPrice | Shared.NewFloatingMatrixWithDisplayNamePrice | Shared.NewFloatingGroupedTieredPackagePrice | Shared.NewFloatingMaxGroupTieredPackagePrice | Shared.NewFloatingScalableMatrixWithUnitPricingPrice | Shared.NewFloatingScalableMatrixWithTieredPricingPrice | Shared.NewFloatingCumulativeGroupedBulkPrice | Add.NewFloatingCumulativeGroupedAllocationPrice | Add.NewFloatingDailyCreditAllowancePrice | Add.NewFloatingMeteredAllowancePrice | Shared.NewFloatingMinimumCompositePrice | Add.NewFloatingPercentCompositePrice | Add.NewFloatingEventOutputPrice | null;
7244
+ price?: Shared.NewFloatingUnitPrice | Shared.NewFloatingTieredPrice | Shared.NewFloatingBulkPrice | Add.NewFloatingBulkWithFiltersPrice | Shared.NewFloatingPackagePrice | Shared.NewFloatingMatrixPrice | Shared.NewFloatingThresholdTotalAmountPrice | Shared.NewFloatingTieredPackagePrice | Shared.NewFloatingTieredWithMinimumPrice | Shared.NewFloatingGroupedTieredPrice | Add.NewFloatingGroupedTieredMatrixPrice | Shared.NewFloatingTieredPackageWithMinimumPrice | Shared.NewFloatingPackageWithAllocationPrice | Shared.NewFloatingUnitWithPercentPrice | Shared.NewFloatingMatrixWithAllocationPrice | Add.NewFloatingMatrixWithThresholdDiscountsPrice | Shared.NewFloatingTieredWithProrationPrice | Shared.NewFloatingUnitWithProrationPrice | Shared.NewFloatingGroupedAllocationPrice | Shared.NewFloatingBulkWithProrationPrice | Shared.NewFloatingGroupedWithProratedMinimumPrice | Shared.NewFloatingGroupedWithMeteredMinimumPrice | Add.NewFloatingGroupedWithMinMaxThresholdsPrice | Shared.NewFloatingMatrixWithDisplayNamePrice | Shared.NewFloatingGroupedTieredPackagePrice | Shared.NewFloatingMaxGroupTieredPackagePrice | Shared.NewFloatingScalableMatrixWithUnitPricingPrice | Shared.NewFloatingScalableMatrixWithTieredPricingPrice | Shared.NewFloatingCumulativeGroupedBulkPrice | Add.NewFloatingCumulativeGroupedAllocationPrice | Add.NewFloatingDailyCreditAllowancePrice | Add.NewFloatingMeteredAllowancePrice | Shared.NewFloatingMinimumCompositePrice | Add.NewFloatingPercentCompositePrice | Add.NewFloatingEventOutputPrice | null;
6962
7245
  /**
6963
7246
  * The id of the price to add to the subscription.
6964
7247
  */
@@ -7133,7 +7416,7 @@ export declare namespace SubscriptionPriceIntervalsParams {
7133
7416
  }
7134
7417
  }
7135
7418
  }
7136
- interface NewFloatingMatrixWithThresholdDiscountsPrice {
7419
+ interface NewFloatingGroupedTieredMatrixPrice {
7137
7420
  /**
7138
7421
  * The cadence to bill for this price on.
7139
7422
  */
@@ -7143,17 +7426,17 @@ export declare namespace SubscriptionPriceIntervalsParams {
7143
7426
  */
7144
7427
  currency: string;
7145
7428
  /**
7146
- * The id of the item the price will be associated with.
7429
+ * Configuration for grouped_tiered_matrix pricing
7147
7430
  */
7148
- item_id: string;
7431
+ grouped_tiered_matrix_config: NewFloatingGroupedTieredMatrixPrice.GroupedTieredMatrixConfig;
7149
7432
  /**
7150
- * Configuration for matrix_with_threshold_discounts pricing
7433
+ * The id of the item the price will be associated with.
7151
7434
  */
7152
- matrix_with_threshold_discounts_config: NewFloatingMatrixWithThresholdDiscountsPrice.MatrixWithThresholdDiscountsConfig;
7435
+ item_id: string;
7153
7436
  /**
7154
7437
  * The pricing model type
7155
7438
  */
7156
- model_type: 'matrix_with_threshold_discounts';
7439
+ model_type: 'grouped_tiered_matrix';
7157
7440
  /**
7158
7441
  * The name of the price.
7159
7442
  */
@@ -7216,47 +7499,166 @@ export declare namespace SubscriptionPriceIntervalsParams {
7216
7499
  [key: string]: string | null;
7217
7500
  } | null;
7218
7501
  }
7219
- namespace NewFloatingMatrixWithThresholdDiscountsPrice {
7502
+ namespace NewFloatingGroupedTieredMatrixPrice {
7220
7503
  /**
7221
- * Configuration for matrix_with_threshold_discounts pricing
7504
+ * Configuration for grouped_tiered_matrix pricing
7222
7505
  */
7223
- interface MatrixWithThresholdDiscountsConfig {
7506
+ interface GroupedTieredMatrixConfig {
7224
7507
  /**
7225
- * Unit price used for usage that does not match any defined matrix cell.
7508
+ * Per unit rate for usage whose dimension value has no configured tiers
7226
7509
  */
7227
7510
  default_unit_amount: string;
7228
7511
  /**
7229
- * First matrix dimension key.
7512
+ * The billable metric property used to group usage before tiering
7230
7513
  */
7231
- first_dimension: string;
7514
+ dimension: string;
7232
7515
  /**
7233
- * Per-cell unit prices.
7516
+ * Graduated tiers keyed by dimension value; usage for a value is tiered only
7517
+ * against its own rows
7234
7518
  */
7235
- matrix_values: Array<MatrixWithThresholdDiscountsConfig.MatrixValue>;
7519
+ tiers: Array<GroupedTieredMatrixConfig.Tier>;
7520
+ }
7521
+ namespace GroupedTieredMatrixConfig {
7236
7522
  /**
7237
- * Optional second matrix dimension key.
7523
+ * Configuration for a single tier scoped to a dimension value
7238
7524
  */
7239
- second_dimension?: string | null;
7240
- threshold_discount_groups?: Array<MatrixWithThresholdDiscountsConfig.ThresholdDiscountGroup>;
7241
- }
7242
- namespace MatrixWithThresholdDiscountsConfig {
7243
- interface MatrixValue {
7244
- first_dimension_value: string;
7245
- unit_amount: string;
7246
- second_dimension_value?: string | null;
7247
- }
7248
- interface ThresholdDiscountGroup {
7525
+ interface Tier {
7249
7526
  /**
7250
- * Discount rate applied to spend above the threshold.
7527
+ * The dimension value this tier applies to
7251
7528
  */
7252
- above_threshold_discount_percentage: string;
7529
+ dimension_value: string;
7530
+ tier_lower_bound: string;
7253
7531
  /**
7254
- * Discount rate applied to spend at or below the threshold. Set to 0 for no
7255
- * baseline discount.
7532
+ * Per unit amount
7256
7533
  */
7257
- below_threshold_discount_percentage: string;
7258
- /**
7259
- * Semicolon-separated list of matrix cell coordinates targeted by this group. Each
7534
+ unit_amount: string;
7535
+ }
7536
+ }
7537
+ }
7538
+ interface NewFloatingMatrixWithThresholdDiscountsPrice {
7539
+ /**
7540
+ * The cadence to bill for this price on.
7541
+ */
7542
+ cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
7543
+ /**
7544
+ * An ISO 4217 currency string for which this price is billed in.
7545
+ */
7546
+ currency: string;
7547
+ /**
7548
+ * The id of the item the price will be associated with.
7549
+ */
7550
+ item_id: string;
7551
+ /**
7552
+ * Configuration for matrix_with_threshold_discounts pricing
7553
+ */
7554
+ matrix_with_threshold_discounts_config: NewFloatingMatrixWithThresholdDiscountsPrice.MatrixWithThresholdDiscountsConfig;
7555
+ /**
7556
+ * The pricing model type
7557
+ */
7558
+ model_type: 'matrix_with_threshold_discounts';
7559
+ /**
7560
+ * The name of the price.
7561
+ */
7562
+ name: string;
7563
+ /**
7564
+ * The id of the billable metric for the price. Only needed if the price is
7565
+ * usage-based.
7566
+ */
7567
+ billable_metric_id?: string | null;
7568
+ /**
7569
+ * If the Price represents a fixed cost, the price will be billed in-advance if
7570
+ * this is true, and in-arrears if this is false.
7571
+ */
7572
+ billed_in_advance?: boolean | null;
7573
+ /**
7574
+ * For custom cadence: specifies the duration of the billing period in days or
7575
+ * months.
7576
+ */
7577
+ billing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
7578
+ /**
7579
+ * The per unit conversion rate of the price currency to the invoicing currency.
7580
+ */
7581
+ conversion_rate?: number | null;
7582
+ /**
7583
+ * The configuration for the rate of the price currency to the invoicing currency.
7584
+ */
7585
+ conversion_rate_config?: Shared.UnitConversionRateConfig | Shared.TieredConversionRateConfig | null;
7586
+ /**
7587
+ * For dimensional price: specifies a price group and dimension values
7588
+ */
7589
+ dimensional_price_configuration?: Shared.NewDimensionalPriceConfiguration | null;
7590
+ /**
7591
+ * An alias for the price.
7592
+ */
7593
+ external_price_id?: string | null;
7594
+ /**
7595
+ * If the Price represents a fixed cost, this represents the quantity of units
7596
+ * applied.
7597
+ */
7598
+ fixed_price_quantity?: number | null;
7599
+ /**
7600
+ * The property used to group this price on an invoice
7601
+ */
7602
+ invoice_grouping_key?: string | null;
7603
+ /**
7604
+ * Within each billing cycle, specifies the cadence at which invoices are produced.
7605
+ * If unspecified, a single invoice is produced per billing cycle.
7606
+ */
7607
+ invoicing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
7608
+ /**
7609
+ * The ID of the license type to associate with this price.
7610
+ */
7611
+ license_type_id?: string | null;
7612
+ /**
7613
+ * User-specified key/value pairs for the resource. Individual keys can be removed
7614
+ * by setting the value to `null`, and the entire metadata mapping can be cleared
7615
+ * by setting `metadata` to `null`.
7616
+ */
7617
+ metadata?: {
7618
+ [key: string]: string | null;
7619
+ } | null;
7620
+ }
7621
+ namespace NewFloatingMatrixWithThresholdDiscountsPrice {
7622
+ /**
7623
+ * Configuration for matrix_with_threshold_discounts pricing
7624
+ */
7625
+ interface MatrixWithThresholdDiscountsConfig {
7626
+ /**
7627
+ * Unit price used for usage that does not match any defined matrix cell.
7628
+ */
7629
+ default_unit_amount: string;
7630
+ /**
7631
+ * First matrix dimension key.
7632
+ */
7633
+ first_dimension: string;
7634
+ /**
7635
+ * Per-cell unit prices.
7636
+ */
7637
+ matrix_values: Array<MatrixWithThresholdDiscountsConfig.MatrixValue>;
7638
+ /**
7639
+ * Optional second matrix dimension key.
7640
+ */
7641
+ second_dimension?: string | null;
7642
+ threshold_discount_groups?: Array<MatrixWithThresholdDiscountsConfig.ThresholdDiscountGroup>;
7643
+ }
7644
+ namespace MatrixWithThresholdDiscountsConfig {
7645
+ interface MatrixValue {
7646
+ first_dimension_value: string;
7647
+ unit_amount: string;
7648
+ second_dimension_value?: string | null;
7649
+ }
7650
+ interface ThresholdDiscountGroup {
7651
+ /**
7652
+ * Discount rate applied to spend above the threshold.
7653
+ */
7654
+ above_threshold_discount_percentage: string;
7655
+ /**
7656
+ * Discount rate applied to spend at or below the threshold. Set to 0 for no
7657
+ * baseline discount.
7658
+ */
7659
+ below_threshold_discount_percentage: string;
7660
+ /**
7661
+ * Semicolon-separated list of matrix cell coordinates targeted by this group. Each
7260
7662
  * coordinate is `first,second` when the matrix has two dimensions, or just `first`
7261
7663
  * for a single-dimension matrix. Example: `blue,circle;green,triangle`.
7262
7664
  */
@@ -8411,7 +8813,7 @@ export declare namespace SubscriptionSchedulePlanChangeParams {
8411
8813
  /**
8412
8814
  * New subscription price request body params.
8413
8815
  */
8414
- price?: SubscriptionsAPI.NewSubscriptionUnitPrice | SubscriptionsAPI.NewSubscriptionTieredPrice | SubscriptionsAPI.NewSubscriptionBulkPrice | AddPrice.NewSubscriptionBulkWithFiltersPrice | SubscriptionsAPI.NewSubscriptionPackagePrice | SubscriptionsAPI.NewSubscriptionMatrixPrice | SubscriptionsAPI.NewSubscriptionThresholdTotalAmountPrice | SubscriptionsAPI.NewSubscriptionTieredPackagePrice | SubscriptionsAPI.NewSubscriptionTieredWithMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPrice | SubscriptionsAPI.NewSubscriptionTieredPackageWithMinimumPrice | SubscriptionsAPI.NewSubscriptionPackageWithAllocationPrice | SubscriptionsAPI.NewSubscriptionUnitWithPercentPrice | SubscriptionsAPI.NewSubscriptionMatrixWithAllocationPrice | AddPrice.NewSubscriptionMatrixWithThresholdDiscountsPrice | AddPrice.NewSubscriptionTieredWithProrationPrice | SubscriptionsAPI.NewSubscriptionUnitWithProrationPrice | SubscriptionsAPI.NewSubscriptionGroupedAllocationPrice | SubscriptionsAPI.NewSubscriptionBulkWithProrationPrice | SubscriptionsAPI.NewSubscriptionGroupedWithProratedMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedWithMeteredMinimumPrice | AddPrice.NewSubscriptionGroupedWithMinMaxThresholdsPrice | SubscriptionsAPI.NewSubscriptionMatrixWithDisplayNamePrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPackagePrice | SubscriptionsAPI.NewSubscriptionMaxGroupTieredPackagePrice | SubscriptionsAPI.NewSubscriptionScalableMatrixWithUnitPricingPrice | SubscriptionsAPI.NewSubscriptionScalableMatrixWithTieredPricingPrice | SubscriptionsAPI.NewSubscriptionCumulativeGroupedBulkPrice | AddPrice.NewSubscriptionCumulativeGroupedAllocationPrice | AddPrice.NewSubscriptionDailyCreditAllowancePrice | AddPrice.NewSubscriptionMeteredAllowancePrice | SubscriptionsAPI.NewSubscriptionMinimumCompositePrice | AddPrice.NewSubscriptionPercentCompositePrice | AddPrice.NewSubscriptionEventOutputPrice | null;
8816
+ price?: SubscriptionsAPI.NewSubscriptionUnitPrice | SubscriptionsAPI.NewSubscriptionTieredPrice | SubscriptionsAPI.NewSubscriptionBulkPrice | AddPrice.NewSubscriptionBulkWithFiltersPrice | SubscriptionsAPI.NewSubscriptionPackagePrice | SubscriptionsAPI.NewSubscriptionMatrixPrice | SubscriptionsAPI.NewSubscriptionThresholdTotalAmountPrice | SubscriptionsAPI.NewSubscriptionTieredPackagePrice | SubscriptionsAPI.NewSubscriptionTieredWithMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPrice | AddPrice.NewSubscriptionGroupedTieredMatrixPrice | SubscriptionsAPI.NewSubscriptionTieredPackageWithMinimumPrice | SubscriptionsAPI.NewSubscriptionPackageWithAllocationPrice | SubscriptionsAPI.NewSubscriptionUnitWithPercentPrice | SubscriptionsAPI.NewSubscriptionMatrixWithAllocationPrice | AddPrice.NewSubscriptionMatrixWithThresholdDiscountsPrice | AddPrice.NewSubscriptionTieredWithProrationPrice | SubscriptionsAPI.NewSubscriptionUnitWithProrationPrice | SubscriptionsAPI.NewSubscriptionGroupedAllocationPrice | SubscriptionsAPI.NewSubscriptionBulkWithProrationPrice | SubscriptionsAPI.NewSubscriptionGroupedWithProratedMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedWithMeteredMinimumPrice | AddPrice.NewSubscriptionGroupedWithMinMaxThresholdsPrice | SubscriptionsAPI.NewSubscriptionMatrixWithDisplayNamePrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPackagePrice | SubscriptionsAPI.NewSubscriptionMaxGroupTieredPackagePrice | SubscriptionsAPI.NewSubscriptionScalableMatrixWithUnitPricingPrice | SubscriptionsAPI.NewSubscriptionScalableMatrixWithTieredPricingPrice | SubscriptionsAPI.NewSubscriptionCumulativeGroupedBulkPrice | AddPrice.NewSubscriptionCumulativeGroupedAllocationPrice | AddPrice.NewSubscriptionDailyCreditAllowancePrice | AddPrice.NewSubscriptionMeteredAllowancePrice | SubscriptionsAPI.NewSubscriptionMinimumCompositePrice | AddPrice.NewSubscriptionPercentCompositePrice | AddPrice.NewSubscriptionEventOutputPrice | null;
8415
8817
  /**
8416
8818
  * The id of the price to add to the subscription.
8417
8819
  */
@@ -8556,6 +8958,131 @@ export declare namespace SubscriptionSchedulePlanChangeParams {
8556
8958
  }
8557
8959
  }
8558
8960
  }
8961
+ interface NewSubscriptionGroupedTieredMatrixPrice {
8962
+ /**
8963
+ * The cadence to bill for this price on.
8964
+ */
8965
+ cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
8966
+ /**
8967
+ * Configuration for grouped_tiered_matrix pricing
8968
+ */
8969
+ grouped_tiered_matrix_config: NewSubscriptionGroupedTieredMatrixPrice.GroupedTieredMatrixConfig;
8970
+ /**
8971
+ * The id of the item the price will be associated with.
8972
+ */
8973
+ item_id: string;
8974
+ /**
8975
+ * The pricing model type
8976
+ */
8977
+ model_type: 'grouped_tiered_matrix';
8978
+ /**
8979
+ * The name of the price.
8980
+ */
8981
+ name: string;
8982
+ /**
8983
+ * The id of the billable metric for the price. Only needed if the price is
8984
+ * usage-based.
8985
+ */
8986
+ billable_metric_id?: string | null;
8987
+ /**
8988
+ * If the Price represents a fixed cost, the price will be billed in-advance if
8989
+ * this is true, and in-arrears if this is false.
8990
+ */
8991
+ billed_in_advance?: boolean | null;
8992
+ /**
8993
+ * For custom cadence: specifies the duration of the billing period in days or
8994
+ * months.
8995
+ */
8996
+ billing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
8997
+ /**
8998
+ * The per unit conversion rate of the price currency to the invoicing currency.
8999
+ */
9000
+ conversion_rate?: number | null;
9001
+ /**
9002
+ * The configuration for the rate of the price currency to the invoicing currency.
9003
+ */
9004
+ conversion_rate_config?: Shared.UnitConversionRateConfig | Shared.TieredConversionRateConfig | null;
9005
+ /**
9006
+ * An ISO 4217 currency string, or custom pricing unit identifier, in which this
9007
+ * price is billed.
9008
+ */
9009
+ currency?: string | null;
9010
+ /**
9011
+ * For dimensional price: specifies a price group and dimension values
9012
+ */
9013
+ dimensional_price_configuration?: Shared.NewDimensionalPriceConfiguration | null;
9014
+ /**
9015
+ * An alias for the price.
9016
+ */
9017
+ external_price_id?: string | null;
9018
+ /**
9019
+ * If the Price represents a fixed cost, this represents the quantity of units
9020
+ * applied.
9021
+ */
9022
+ fixed_price_quantity?: number | null;
9023
+ /**
9024
+ * The property used to group this price on an invoice
9025
+ */
9026
+ invoice_grouping_key?: string | null;
9027
+ /**
9028
+ * Within each billing cycle, specifies the cadence at which invoices are produced.
9029
+ * If unspecified, a single invoice is produced per billing cycle.
9030
+ */
9031
+ invoicing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
9032
+ /**
9033
+ * The ID of the license type to associate with this price.
9034
+ */
9035
+ license_type_id?: string | null;
9036
+ /**
9037
+ * User-specified key/value pairs for the resource. Individual keys can be removed
9038
+ * by setting the value to `null`, and the entire metadata mapping can be cleared
9039
+ * by setting `metadata` to `null`.
9040
+ */
9041
+ metadata?: {
9042
+ [key: string]: string | null;
9043
+ } | null;
9044
+ /**
9045
+ * A transient ID that can be used to reference this price when adding adjustments
9046
+ * in the same API call.
9047
+ */
9048
+ reference_id?: string | null;
9049
+ }
9050
+ namespace NewSubscriptionGroupedTieredMatrixPrice {
9051
+ /**
9052
+ * Configuration for grouped_tiered_matrix pricing
9053
+ */
9054
+ interface GroupedTieredMatrixConfig {
9055
+ /**
9056
+ * Per unit rate for usage whose dimension value has no configured tiers
9057
+ */
9058
+ default_unit_amount: string;
9059
+ /**
9060
+ * The billable metric property used to group usage before tiering
9061
+ */
9062
+ dimension: string;
9063
+ /**
9064
+ * Graduated tiers keyed by dimension value; usage for a value is tiered only
9065
+ * against its own rows
9066
+ */
9067
+ tiers: Array<GroupedTieredMatrixConfig.Tier>;
9068
+ }
9069
+ namespace GroupedTieredMatrixConfig {
9070
+ /**
9071
+ * Configuration for a single tier scoped to a dimension value
9072
+ */
9073
+ interface Tier {
9074
+ /**
9075
+ * The dimension value this tier applies to
9076
+ */
9077
+ dimension_value: string;
9078
+ tier_lower_bound: string;
9079
+ /**
9080
+ * Per unit amount
9081
+ */
9082
+ unit_amount: string;
9083
+ }
9084
+ }
9085
+ }
8559
9086
  interface NewSubscriptionMatrixWithThresholdDiscountsPrice {
8560
9087
  /**
8561
9088
  * The cadence to bill for this price on.
@@ -9654,7 +10181,7 @@ export declare namespace SubscriptionSchedulePlanChangeParams {
9654
10181
  /**
9655
10182
  * New subscription price request body params.
9656
10183
  */
9657
- price?: SubscriptionsAPI.NewSubscriptionUnitPrice | SubscriptionsAPI.NewSubscriptionTieredPrice | SubscriptionsAPI.NewSubscriptionBulkPrice | ReplacePrice.NewSubscriptionBulkWithFiltersPrice | SubscriptionsAPI.NewSubscriptionPackagePrice | SubscriptionsAPI.NewSubscriptionMatrixPrice | SubscriptionsAPI.NewSubscriptionThresholdTotalAmountPrice | SubscriptionsAPI.NewSubscriptionTieredPackagePrice | SubscriptionsAPI.NewSubscriptionTieredWithMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPrice | SubscriptionsAPI.NewSubscriptionTieredPackageWithMinimumPrice | SubscriptionsAPI.NewSubscriptionPackageWithAllocationPrice | SubscriptionsAPI.NewSubscriptionUnitWithPercentPrice | SubscriptionsAPI.NewSubscriptionMatrixWithAllocationPrice | ReplacePrice.NewSubscriptionMatrixWithThresholdDiscountsPrice | ReplacePrice.NewSubscriptionTieredWithProrationPrice | SubscriptionsAPI.NewSubscriptionUnitWithProrationPrice | SubscriptionsAPI.NewSubscriptionGroupedAllocationPrice | SubscriptionsAPI.NewSubscriptionBulkWithProrationPrice | SubscriptionsAPI.NewSubscriptionGroupedWithProratedMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedWithMeteredMinimumPrice | ReplacePrice.NewSubscriptionGroupedWithMinMaxThresholdsPrice | SubscriptionsAPI.NewSubscriptionMatrixWithDisplayNamePrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPackagePrice | SubscriptionsAPI.NewSubscriptionMaxGroupTieredPackagePrice | SubscriptionsAPI.NewSubscriptionScalableMatrixWithUnitPricingPrice | SubscriptionsAPI.NewSubscriptionScalableMatrixWithTieredPricingPrice | SubscriptionsAPI.NewSubscriptionCumulativeGroupedBulkPrice | ReplacePrice.NewSubscriptionCumulativeGroupedAllocationPrice | ReplacePrice.NewSubscriptionDailyCreditAllowancePrice | ReplacePrice.NewSubscriptionMeteredAllowancePrice | SubscriptionsAPI.NewSubscriptionMinimumCompositePrice | ReplacePrice.NewSubscriptionPercentCompositePrice | ReplacePrice.NewSubscriptionEventOutputPrice | null;
10184
+ price?: SubscriptionsAPI.NewSubscriptionUnitPrice | SubscriptionsAPI.NewSubscriptionTieredPrice | SubscriptionsAPI.NewSubscriptionBulkPrice | ReplacePrice.NewSubscriptionBulkWithFiltersPrice | SubscriptionsAPI.NewSubscriptionPackagePrice | SubscriptionsAPI.NewSubscriptionMatrixPrice | SubscriptionsAPI.NewSubscriptionThresholdTotalAmountPrice | SubscriptionsAPI.NewSubscriptionTieredPackagePrice | SubscriptionsAPI.NewSubscriptionTieredWithMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPrice | ReplacePrice.NewSubscriptionGroupedTieredMatrixPrice | SubscriptionsAPI.NewSubscriptionTieredPackageWithMinimumPrice | SubscriptionsAPI.NewSubscriptionPackageWithAllocationPrice | SubscriptionsAPI.NewSubscriptionUnitWithPercentPrice | SubscriptionsAPI.NewSubscriptionMatrixWithAllocationPrice | ReplacePrice.NewSubscriptionMatrixWithThresholdDiscountsPrice | ReplacePrice.NewSubscriptionTieredWithProrationPrice | SubscriptionsAPI.NewSubscriptionUnitWithProrationPrice | SubscriptionsAPI.NewSubscriptionGroupedAllocationPrice | SubscriptionsAPI.NewSubscriptionBulkWithProrationPrice | SubscriptionsAPI.NewSubscriptionGroupedWithProratedMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedWithMeteredMinimumPrice | ReplacePrice.NewSubscriptionGroupedWithMinMaxThresholdsPrice | SubscriptionsAPI.NewSubscriptionMatrixWithDisplayNamePrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPackagePrice | SubscriptionsAPI.NewSubscriptionMaxGroupTieredPackagePrice | SubscriptionsAPI.NewSubscriptionScalableMatrixWithUnitPricingPrice | SubscriptionsAPI.NewSubscriptionScalableMatrixWithTieredPricingPrice | SubscriptionsAPI.NewSubscriptionCumulativeGroupedBulkPrice | ReplacePrice.NewSubscriptionCumulativeGroupedAllocationPrice | ReplacePrice.NewSubscriptionDailyCreditAllowancePrice | ReplacePrice.NewSubscriptionMeteredAllowancePrice | SubscriptionsAPI.NewSubscriptionMinimumCompositePrice | ReplacePrice.NewSubscriptionPercentCompositePrice | ReplacePrice.NewSubscriptionEventOutputPrice | null;
9658
10185
  /**
9659
10186
  * The id of the price to add to the subscription.
9660
10187
  */
@@ -9793,6 +10320,131 @@ export declare namespace SubscriptionSchedulePlanChangeParams {
9793
10320
  }
9794
10321
  }
9795
10322
  }
10323
+ interface NewSubscriptionGroupedTieredMatrixPrice {
10324
+ /**
10325
+ * The cadence to bill for this price on.
10326
+ */
10327
+ cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
10328
+ /**
10329
+ * Configuration for grouped_tiered_matrix pricing
10330
+ */
10331
+ grouped_tiered_matrix_config: NewSubscriptionGroupedTieredMatrixPrice.GroupedTieredMatrixConfig;
10332
+ /**
10333
+ * The id of the item the price will be associated with.
10334
+ */
10335
+ item_id: string;
10336
+ /**
10337
+ * The pricing model type
10338
+ */
10339
+ model_type: 'grouped_tiered_matrix';
10340
+ /**
10341
+ * The name of the price.
10342
+ */
10343
+ name: string;
10344
+ /**
10345
+ * The id of the billable metric for the price. Only needed if the price is
10346
+ * usage-based.
10347
+ */
10348
+ billable_metric_id?: string | null;
10349
+ /**
10350
+ * If the Price represents a fixed cost, the price will be billed in-advance if
10351
+ * this is true, and in-arrears if this is false.
10352
+ */
10353
+ billed_in_advance?: boolean | null;
10354
+ /**
10355
+ * For custom cadence: specifies the duration of the billing period in days or
10356
+ * months.
10357
+ */
10358
+ billing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
10359
+ /**
10360
+ * The per unit conversion rate of the price currency to the invoicing currency.
10361
+ */
10362
+ conversion_rate?: number | null;
10363
+ /**
10364
+ * The configuration for the rate of the price currency to the invoicing currency.
10365
+ */
10366
+ conversion_rate_config?: Shared.UnitConversionRateConfig | Shared.TieredConversionRateConfig | null;
10367
+ /**
10368
+ * An ISO 4217 currency string, or custom pricing unit identifier, in which this
10369
+ * price is billed.
10370
+ */
10371
+ currency?: string | null;
10372
+ /**
10373
+ * For dimensional price: specifies a price group and dimension values
10374
+ */
10375
+ dimensional_price_configuration?: Shared.NewDimensionalPriceConfiguration | null;
10376
+ /**
10377
+ * An alias for the price.
10378
+ */
10379
+ external_price_id?: string | null;
10380
+ /**
10381
+ * If the Price represents a fixed cost, this represents the quantity of units
10382
+ * applied.
10383
+ */
10384
+ fixed_price_quantity?: number | null;
10385
+ /**
10386
+ * The property used to group this price on an invoice
10387
+ */
10388
+ invoice_grouping_key?: string | null;
10389
+ /**
10390
+ * Within each billing cycle, specifies the cadence at which invoices are produced.
10391
+ * If unspecified, a single invoice is produced per billing cycle.
10392
+ */
10393
+ invoicing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
10394
+ /**
10395
+ * The ID of the license type to associate with this price.
10396
+ */
10397
+ license_type_id?: string | null;
10398
+ /**
10399
+ * User-specified key/value pairs for the resource. Individual keys can be removed
10400
+ * by setting the value to `null`, and the entire metadata mapping can be cleared
10401
+ * by setting `metadata` to `null`.
10402
+ */
10403
+ metadata?: {
10404
+ [key: string]: string | null;
10405
+ } | null;
10406
+ /**
10407
+ * A transient ID that can be used to reference this price when adding adjustments
10408
+ * in the same API call.
10409
+ */
10410
+ reference_id?: string | null;
10411
+ }
10412
+ namespace NewSubscriptionGroupedTieredMatrixPrice {
10413
+ /**
10414
+ * Configuration for grouped_tiered_matrix pricing
10415
+ */
10416
+ interface GroupedTieredMatrixConfig {
10417
+ /**
10418
+ * Per unit rate for usage whose dimension value has no configured tiers
10419
+ */
10420
+ default_unit_amount: string;
10421
+ /**
10422
+ * The billable metric property used to group usage before tiering
10423
+ */
10424
+ dimension: string;
10425
+ /**
10426
+ * Graduated tiers keyed by dimension value; usage for a value is tiered only
10427
+ * against its own rows
10428
+ */
10429
+ tiers: Array<GroupedTieredMatrixConfig.Tier>;
10430
+ }
10431
+ namespace GroupedTieredMatrixConfig {
10432
+ /**
10433
+ * Configuration for a single tier scoped to a dimension value
10434
+ */
10435
+ interface Tier {
10436
+ /**
10437
+ * The dimension value this tier applies to
10438
+ */
10439
+ dimension_value: string;
10440
+ tier_lower_bound: string;
10441
+ /**
10442
+ * Per unit amount
10443
+ */
10444
+ unit_amount: string;
10445
+ }
10446
+ }
10447
+ }
9796
10448
  interface NewSubscriptionMatrixWithThresholdDiscountsPrice {
9797
10449
  /**
9798
10450
  * The cadence to bill for this price on.