orb-billing 5.17.0 → 5.19.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 (39) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/package.json +1 -1
  3. package/resources/beta/beta.d.ts +258 -2
  4. package/resources/beta/beta.d.ts.map +1 -1
  5. package/resources/beta/beta.js.map +1 -1
  6. package/resources/beta/beta.mjs.map +1 -1
  7. package/resources/beta/external-plan-id.d.ts +258 -2
  8. package/resources/beta/external-plan-id.d.ts.map +1 -1
  9. package/resources/customers/credits/ledger.d.ts +10 -0
  10. package/resources/customers/credits/ledger.d.ts.map +1 -1
  11. package/resources/customers/credits/ledger.js.map +1 -1
  12. package/resources/customers/credits/ledger.mjs.map +1 -1
  13. package/resources/plans/plans.d.ts +129 -1
  14. package/resources/plans/plans.d.ts.map +1 -1
  15. package/resources/plans/plans.js.map +1 -1
  16. package/resources/plans/plans.mjs.map +1 -1
  17. package/resources/prices/prices.d.ts +369 -3
  18. package/resources/prices/prices.d.ts.map +1 -1
  19. package/resources/prices/prices.js.map +1 -1
  20. package/resources/prices/prices.mjs.map +1 -1
  21. package/resources/shared.d.ts +111 -1
  22. package/resources/shared.d.ts.map +1 -1
  23. package/resources/shared.js.map +1 -1
  24. package/resources/shared.mjs.map +1 -1
  25. package/resources/subscriptions.d.ts +659 -25
  26. package/resources/subscriptions.d.ts.map +1 -1
  27. package/resources/subscriptions.js.map +1 -1
  28. package/resources/subscriptions.mjs.map +1 -1
  29. package/src/resources/beta/beta.ts +302 -0
  30. package/src/resources/beta/external-plan-id.ts +302 -0
  31. package/src/resources/customers/credits/ledger.ts +12 -0
  32. package/src/resources/plans/plans.ts +151 -0
  33. package/src/resources/prices/prices.ts +432 -0
  34. package/src/resources/shared.ts +143 -0
  35. package/src/resources/subscriptions.ts +804 -56
  36. package/src/version.ts +1 -1
  37. package/version.d.ts +1 -1
  38. package/version.js +1 -1
  39. package/version.mjs +1 -1
@@ -4079,7 +4079,7 @@ export declare namespace SubscriptionCreateParams {
4079
4079
  /**
4080
4080
  * New subscription price request body params.
4081
4081
  */
4082
- price?: SubscriptionsAPI.NewSubscriptionUnitPrice | SubscriptionsAPI.NewSubscriptionTieredPrice | SubscriptionsAPI.NewSubscriptionBulkPrice | SubscriptionsAPI.NewSubscriptionPackagePrice | SubscriptionsAPI.NewSubscriptionMatrixPrice | SubscriptionsAPI.NewSubscriptionThresholdTotalAmountPrice | SubscriptionsAPI.NewSubscriptionTieredPackagePrice | SubscriptionsAPI.NewSubscriptionTieredWithMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPrice | SubscriptionsAPI.NewSubscriptionTieredPackageWithMinimumPrice | SubscriptionsAPI.NewSubscriptionPackageWithAllocationPrice | SubscriptionsAPI.NewSubscriptionUnitWithPercentPrice | SubscriptionsAPI.NewSubscriptionMatrixWithAllocationPrice | 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 | SubscriptionsAPI.NewSubscriptionMinimumCompositePrice | AddPrice.NewSubscriptionPercentCompositePrice | AddPrice.NewSubscriptionEventOutputPrice | null;
4082
+ 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.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 | SubscriptionsAPI.NewSubscriptionMinimumCompositePrice | AddPrice.NewSubscriptionPercentCompositePrice | AddPrice.NewSubscriptionEventOutputPrice | null;
4083
4083
  /**
4084
4084
  * The id of the price to add to the subscription.
4085
4085
  */
@@ -4092,6 +4092,134 @@ export declare namespace SubscriptionCreateParams {
4092
4092
  start_date?: string | null;
4093
4093
  }
4094
4094
  namespace AddPrice {
4095
+ interface NewSubscriptionBulkWithFiltersPrice {
4096
+ /**
4097
+ * Configuration for bulk_with_filters pricing
4098
+ */
4099
+ bulk_with_filters_config: NewSubscriptionBulkWithFiltersPrice.BulkWithFiltersConfig;
4100
+ /**
4101
+ * The cadence to bill for this price on.
4102
+ */
4103
+ cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
4104
+ /**
4105
+ * The id of the item the price will be associated with.
4106
+ */
4107
+ item_id: string;
4108
+ /**
4109
+ * The pricing model type
4110
+ */
4111
+ model_type: 'bulk_with_filters';
4112
+ /**
4113
+ * The name of the price.
4114
+ */
4115
+ name: string;
4116
+ /**
4117
+ * The id of the billable metric for the price. Only needed if the price is
4118
+ * usage-based.
4119
+ */
4120
+ billable_metric_id?: string | null;
4121
+ /**
4122
+ * If the Price represents a fixed cost, the price will be billed in-advance if
4123
+ * this is true, and in-arrears if this is false.
4124
+ */
4125
+ billed_in_advance?: boolean | null;
4126
+ /**
4127
+ * For custom cadence: specifies the duration of the billing period in days or
4128
+ * months.
4129
+ */
4130
+ billing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
4131
+ /**
4132
+ * The per unit conversion rate of the price currency to the invoicing currency.
4133
+ */
4134
+ conversion_rate?: number | null;
4135
+ /**
4136
+ * The configuration for the rate of the price currency to the invoicing currency.
4137
+ */
4138
+ conversion_rate_config?: Shared.UnitConversionRateConfig | Shared.TieredConversionRateConfig | null;
4139
+ /**
4140
+ * An ISO 4217 currency string, or custom pricing unit identifier, in which this
4141
+ * price is billed.
4142
+ */
4143
+ currency?: string | null;
4144
+ /**
4145
+ * For dimensional price: specifies a price group and dimension values
4146
+ */
4147
+ dimensional_price_configuration?: Shared.NewDimensionalPriceConfiguration | null;
4148
+ /**
4149
+ * An alias for the price.
4150
+ */
4151
+ external_price_id?: string | null;
4152
+ /**
4153
+ * If the Price represents a fixed cost, this represents the quantity of units
4154
+ * applied.
4155
+ */
4156
+ fixed_price_quantity?: number | null;
4157
+ /**
4158
+ * The property used to group this price on an invoice
4159
+ */
4160
+ invoice_grouping_key?: string | null;
4161
+ /**
4162
+ * Within each billing cycle, specifies the cadence at which invoices are produced.
4163
+ * If unspecified, a single invoice is produced per billing cycle.
4164
+ */
4165
+ invoicing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
4166
+ /**
4167
+ * User-specified key/value pairs for the resource. Individual keys can be removed
4168
+ * by setting the value to `null`, and the entire metadata mapping can be cleared
4169
+ * by setting `metadata` to `null`.
4170
+ */
4171
+ metadata?: {
4172
+ [key: string]: string | null;
4173
+ } | null;
4174
+ /**
4175
+ * A transient ID that can be used to reference this price when adding adjustments
4176
+ * in the same API call.
4177
+ */
4178
+ reference_id?: string | null;
4179
+ }
4180
+ namespace NewSubscriptionBulkWithFiltersPrice {
4181
+ /**
4182
+ * Configuration for bulk_with_filters pricing
4183
+ */
4184
+ interface BulkWithFiltersConfig {
4185
+ /**
4186
+ * Property filters to apply (all must match)
4187
+ */
4188
+ filters: Array<BulkWithFiltersConfig.Filter>;
4189
+ /**
4190
+ * Bulk tiers for rating based on total usage volume
4191
+ */
4192
+ tiers: Array<BulkWithFiltersConfig.Tier>;
4193
+ }
4194
+ namespace BulkWithFiltersConfig {
4195
+ /**
4196
+ * Configuration for a single property filter
4197
+ */
4198
+ interface Filter {
4199
+ /**
4200
+ * Event property key to filter on
4201
+ */
4202
+ property_key: string;
4203
+ /**
4204
+ * Event property value to match
4205
+ */
4206
+ property_value: string;
4207
+ }
4208
+ /**
4209
+ * Configuration for a single bulk pricing tier
4210
+ */
4211
+ interface Tier {
4212
+ /**
4213
+ * Amount per unit
4214
+ */
4215
+ unit_amount: string;
4216
+ /**
4217
+ * The lower bound for this tier
4218
+ */
4219
+ tier_lower_bound?: string | null;
4220
+ }
4221
+ }
4222
+ }
4095
4223
  interface NewSubscriptionTieredWithProrationPrice {
4096
4224
  /**
4097
4225
  * The cadence to bill for this price on.
@@ -4571,13 +4699,141 @@ export declare namespace SubscriptionCreateParams {
4571
4699
  /**
4572
4700
  * New subscription price request body params.
4573
4701
  */
4574
- price?: SubscriptionsAPI.NewSubscriptionUnitPrice | SubscriptionsAPI.NewSubscriptionTieredPrice | SubscriptionsAPI.NewSubscriptionBulkPrice | SubscriptionsAPI.NewSubscriptionPackagePrice | SubscriptionsAPI.NewSubscriptionMatrixPrice | SubscriptionsAPI.NewSubscriptionThresholdTotalAmountPrice | SubscriptionsAPI.NewSubscriptionTieredPackagePrice | SubscriptionsAPI.NewSubscriptionTieredWithMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPrice | SubscriptionsAPI.NewSubscriptionTieredPackageWithMinimumPrice | SubscriptionsAPI.NewSubscriptionPackageWithAllocationPrice | SubscriptionsAPI.NewSubscriptionUnitWithPercentPrice | SubscriptionsAPI.NewSubscriptionMatrixWithAllocationPrice | 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 | SubscriptionsAPI.NewSubscriptionMinimumCompositePrice | ReplacePrice.NewSubscriptionPercentCompositePrice | ReplacePrice.NewSubscriptionEventOutputPrice | null;
4702
+ 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.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 | SubscriptionsAPI.NewSubscriptionMinimumCompositePrice | ReplacePrice.NewSubscriptionPercentCompositePrice | ReplacePrice.NewSubscriptionEventOutputPrice | null;
4575
4703
  /**
4576
4704
  * The id of the price to add to the subscription.
4577
4705
  */
4578
4706
  price_id?: string | null;
4579
4707
  }
4580
4708
  namespace ReplacePrice {
4709
+ interface NewSubscriptionBulkWithFiltersPrice {
4710
+ /**
4711
+ * Configuration for bulk_with_filters pricing
4712
+ */
4713
+ bulk_with_filters_config: NewSubscriptionBulkWithFiltersPrice.BulkWithFiltersConfig;
4714
+ /**
4715
+ * The cadence to bill for this price on.
4716
+ */
4717
+ cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
4718
+ /**
4719
+ * The id of the item the price will be associated with.
4720
+ */
4721
+ item_id: string;
4722
+ /**
4723
+ * The pricing model type
4724
+ */
4725
+ model_type: 'bulk_with_filters';
4726
+ /**
4727
+ * The name of the price.
4728
+ */
4729
+ name: string;
4730
+ /**
4731
+ * The id of the billable metric for the price. Only needed if the price is
4732
+ * usage-based.
4733
+ */
4734
+ billable_metric_id?: string | null;
4735
+ /**
4736
+ * If the Price represents a fixed cost, the price will be billed in-advance if
4737
+ * this is true, and in-arrears if this is false.
4738
+ */
4739
+ billed_in_advance?: boolean | null;
4740
+ /**
4741
+ * For custom cadence: specifies the duration of the billing period in days or
4742
+ * months.
4743
+ */
4744
+ billing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
4745
+ /**
4746
+ * The per unit conversion rate of the price currency to the invoicing currency.
4747
+ */
4748
+ conversion_rate?: number | null;
4749
+ /**
4750
+ * The configuration for the rate of the price currency to the invoicing currency.
4751
+ */
4752
+ conversion_rate_config?: Shared.UnitConversionRateConfig | Shared.TieredConversionRateConfig | null;
4753
+ /**
4754
+ * An ISO 4217 currency string, or custom pricing unit identifier, in which this
4755
+ * price is billed.
4756
+ */
4757
+ currency?: string | null;
4758
+ /**
4759
+ * For dimensional price: specifies a price group and dimension values
4760
+ */
4761
+ dimensional_price_configuration?: Shared.NewDimensionalPriceConfiguration | null;
4762
+ /**
4763
+ * An alias for the price.
4764
+ */
4765
+ external_price_id?: string | null;
4766
+ /**
4767
+ * If the Price represents a fixed cost, this represents the quantity of units
4768
+ * applied.
4769
+ */
4770
+ fixed_price_quantity?: number | null;
4771
+ /**
4772
+ * The property used to group this price on an invoice
4773
+ */
4774
+ invoice_grouping_key?: string | null;
4775
+ /**
4776
+ * Within each billing cycle, specifies the cadence at which invoices are produced.
4777
+ * If unspecified, a single invoice is produced per billing cycle.
4778
+ */
4779
+ invoicing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
4780
+ /**
4781
+ * User-specified key/value pairs for the resource. Individual keys can be removed
4782
+ * by setting the value to `null`, and the entire metadata mapping can be cleared
4783
+ * by setting `metadata` to `null`.
4784
+ */
4785
+ metadata?: {
4786
+ [key: string]: string | null;
4787
+ } | null;
4788
+ /**
4789
+ * A transient ID that can be used to reference this price when adding adjustments
4790
+ * in the same API call.
4791
+ */
4792
+ reference_id?: string | null;
4793
+ }
4794
+ namespace NewSubscriptionBulkWithFiltersPrice {
4795
+ /**
4796
+ * Configuration for bulk_with_filters pricing
4797
+ */
4798
+ interface BulkWithFiltersConfig {
4799
+ /**
4800
+ * Property filters to apply (all must match)
4801
+ */
4802
+ filters: Array<BulkWithFiltersConfig.Filter>;
4803
+ /**
4804
+ * Bulk tiers for rating based on total usage volume
4805
+ */
4806
+ tiers: Array<BulkWithFiltersConfig.Tier>;
4807
+ }
4808
+ namespace BulkWithFiltersConfig {
4809
+ /**
4810
+ * Configuration for a single property filter
4811
+ */
4812
+ interface Filter {
4813
+ /**
4814
+ * Event property key to filter on
4815
+ */
4816
+ property_key: string;
4817
+ /**
4818
+ * Event property value to match
4819
+ */
4820
+ property_value: string;
4821
+ }
4822
+ /**
4823
+ * Configuration for a single bulk pricing tier
4824
+ */
4825
+ interface Tier {
4826
+ /**
4827
+ * Amount per unit
4828
+ */
4829
+ unit_amount: string;
4830
+ /**
4831
+ * The lower bound for this tier
4832
+ */
4833
+ tier_lower_bound?: string | null;
4834
+ }
4835
+ }
4836
+ }
4581
4837
  interface NewSubscriptionTieredWithProrationPrice {
4582
4838
  /**
4583
4839
  * The cadence to bill for this price on.
@@ -5193,7 +5449,7 @@ export declare namespace SubscriptionPriceIntervalsParams {
5193
5449
  /**
5194
5450
  * New floating price request body params.
5195
5451
  */
5196
- price?: Shared.NewFloatingUnitPrice | Shared.NewFloatingTieredPrice | Shared.NewFloatingBulkPrice | Shared.NewFloatingPackagePrice | Shared.NewFloatingMatrixPrice | Shared.NewFloatingThresholdTotalAmountPrice | Shared.NewFloatingTieredPackagePrice | Shared.NewFloatingTieredWithMinimumPrice | Shared.NewFloatingGroupedTieredPrice | Shared.NewFloatingTieredPackageWithMinimumPrice | Shared.NewFloatingPackageWithAllocationPrice | Shared.NewFloatingUnitWithPercentPrice | Shared.NewFloatingMatrixWithAllocationPrice | 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 | Shared.NewFloatingMinimumCompositePrice | Add.NewFloatingPercentCompositePrice | Add.NewFloatingEventOutputPrice | null;
5452
+ 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 | 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 | Shared.NewFloatingMinimumCompositePrice | Add.NewFloatingPercentCompositePrice | Add.NewFloatingEventOutputPrice | null;
5197
5453
  /**
5198
5454
  * The id of the price to add to the subscription.
5199
5455
  */
@@ -5242,7 +5498,11 @@ export declare namespace SubscriptionPriceIntervalsParams {
5242
5498
  */
5243
5499
  quantity: number;
5244
5500
  }
5245
- interface NewFloatingGroupedWithMinMaxThresholdsPrice {
5501
+ interface NewFloatingBulkWithFiltersPrice {
5502
+ /**
5503
+ * Configuration for bulk_with_filters pricing
5504
+ */
5505
+ bulk_with_filters_config: NewFloatingBulkWithFiltersPrice.BulkWithFiltersConfig;
5246
5506
  /**
5247
5507
  * The cadence to bill for this price on.
5248
5508
  */
@@ -5251,10 +5511,6 @@ export declare namespace SubscriptionPriceIntervalsParams {
5251
5511
  * An ISO 4217 currency string for which this price is billed in.
5252
5512
  */
5253
5513
  currency: string;
5254
- /**
5255
- * Configuration for grouped_with_min_max_thresholds pricing
5256
- */
5257
- grouped_with_min_max_thresholds_config: NewFloatingGroupedWithMinMaxThresholdsPrice.GroupedWithMinMaxThresholdsConfig;
5258
5514
  /**
5259
5515
  * The id of the item the price will be associated with.
5260
5516
  */
@@ -5262,7 +5518,7 @@ export declare namespace SubscriptionPriceIntervalsParams {
5262
5518
  /**
5263
5519
  * The pricing model type
5264
5520
  */
5265
- model_type: 'grouped_with_min_max_thresholds';
5521
+ model_type: 'bulk_with_filters';
5266
5522
  /**
5267
5523
  * The name of the price.
5268
5524
  */
@@ -5321,30 +5577,50 @@ export declare namespace SubscriptionPriceIntervalsParams {
5321
5577
  [key: string]: string | null;
5322
5578
  } | null;
5323
5579
  }
5324
- namespace NewFloatingGroupedWithMinMaxThresholdsPrice {
5580
+ namespace NewFloatingBulkWithFiltersPrice {
5325
5581
  /**
5326
- * Configuration for grouped_with_min_max_thresholds pricing
5582
+ * Configuration for bulk_with_filters pricing
5327
5583
  */
5328
- interface GroupedWithMinMaxThresholdsConfig {
5584
+ interface BulkWithFiltersConfig {
5329
5585
  /**
5330
- * The event property used to group before applying thresholds
5586
+ * Property filters to apply (all must match)
5331
5587
  */
5332
- grouping_key: string;
5588
+ filters: Array<BulkWithFiltersConfig.Filter>;
5333
5589
  /**
5334
- * The maximum amount to charge each group
5590
+ * Bulk tiers for rating based on total usage volume
5335
5591
  */
5336
- maximum_charge: string;
5592
+ tiers: Array<BulkWithFiltersConfig.Tier>;
5593
+ }
5594
+ namespace BulkWithFiltersConfig {
5337
5595
  /**
5338
- * The minimum amount to charge each group, regardless of usage
5596
+ * Configuration for a single property filter
5339
5597
  */
5340
- minimum_charge: string;
5598
+ interface Filter {
5599
+ /**
5600
+ * Event property key to filter on
5601
+ */
5602
+ property_key: string;
5603
+ /**
5604
+ * Event property value to match
5605
+ */
5606
+ property_value: string;
5607
+ }
5341
5608
  /**
5342
- * The base price charged per group
5609
+ * Configuration for a single bulk pricing tier
5343
5610
  */
5344
- per_unit_rate: string;
5611
+ interface Tier {
5612
+ /**
5613
+ * Amount per unit
5614
+ */
5615
+ unit_amount: string;
5616
+ /**
5617
+ * The lower bound for this tier
5618
+ */
5619
+ tier_lower_bound?: string | null;
5620
+ }
5345
5621
  }
5346
5622
  }
5347
- interface NewFloatingPercentCompositePrice {
5623
+ interface NewFloatingGroupedWithMinMaxThresholdsPrice {
5348
5624
  /**
5349
5625
  * The cadence to bill for this price on.
5350
5626
  */
@@ -5353,6 +5629,10 @@ export declare namespace SubscriptionPriceIntervalsParams {
5353
5629
  * An ISO 4217 currency string for which this price is billed in.
5354
5630
  */
5355
5631
  currency: string;
5632
+ /**
5633
+ * Configuration for grouped_with_min_max_thresholds pricing
5634
+ */
5635
+ grouped_with_min_max_thresholds_config: NewFloatingGroupedWithMinMaxThresholdsPrice.GroupedWithMinMaxThresholdsConfig;
5356
5636
  /**
5357
5637
  * The id of the item the price will be associated with.
5358
5638
  */
@@ -5360,13 +5640,111 @@ export declare namespace SubscriptionPriceIntervalsParams {
5360
5640
  /**
5361
5641
  * The pricing model type
5362
5642
  */
5363
- model_type: 'percent';
5643
+ model_type: 'grouped_with_min_max_thresholds';
5364
5644
  /**
5365
5645
  * The name of the price.
5366
5646
  */
5367
5647
  name: string;
5368
5648
  /**
5369
- * Configuration for percent pricing
5649
+ * The id of the billable metric for the price. Only needed if the price is
5650
+ * usage-based.
5651
+ */
5652
+ billable_metric_id?: string | null;
5653
+ /**
5654
+ * If the Price represents a fixed cost, the price will be billed in-advance if
5655
+ * this is true, and in-arrears if this is false.
5656
+ */
5657
+ billed_in_advance?: boolean | null;
5658
+ /**
5659
+ * For custom cadence: specifies the duration of the billing period in days or
5660
+ * months.
5661
+ */
5662
+ billing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
5663
+ /**
5664
+ * The per unit conversion rate of the price currency to the invoicing currency.
5665
+ */
5666
+ conversion_rate?: number | null;
5667
+ /**
5668
+ * The configuration for the rate of the price currency to the invoicing currency.
5669
+ */
5670
+ conversion_rate_config?: Shared.UnitConversionRateConfig | Shared.TieredConversionRateConfig | null;
5671
+ /**
5672
+ * For dimensional price: specifies a price group and dimension values
5673
+ */
5674
+ dimensional_price_configuration?: Shared.NewDimensionalPriceConfiguration | null;
5675
+ /**
5676
+ * An alias for the price.
5677
+ */
5678
+ external_price_id?: string | null;
5679
+ /**
5680
+ * If the Price represents a fixed cost, this represents the quantity of units
5681
+ * applied.
5682
+ */
5683
+ fixed_price_quantity?: number | null;
5684
+ /**
5685
+ * The property used to group this price on an invoice
5686
+ */
5687
+ invoice_grouping_key?: string | null;
5688
+ /**
5689
+ * Within each billing cycle, specifies the cadence at which invoices are produced.
5690
+ * If unspecified, a single invoice is produced per billing cycle.
5691
+ */
5692
+ invoicing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
5693
+ /**
5694
+ * User-specified key/value pairs for the resource. Individual keys can be removed
5695
+ * by setting the value to `null`, and the entire metadata mapping can be cleared
5696
+ * by setting `metadata` to `null`.
5697
+ */
5698
+ metadata?: {
5699
+ [key: string]: string | null;
5700
+ } | null;
5701
+ }
5702
+ namespace NewFloatingGroupedWithMinMaxThresholdsPrice {
5703
+ /**
5704
+ * Configuration for grouped_with_min_max_thresholds pricing
5705
+ */
5706
+ interface GroupedWithMinMaxThresholdsConfig {
5707
+ /**
5708
+ * The event property used to group before applying thresholds
5709
+ */
5710
+ grouping_key: string;
5711
+ /**
5712
+ * The maximum amount to charge each group
5713
+ */
5714
+ maximum_charge: string;
5715
+ /**
5716
+ * The minimum amount to charge each group, regardless of usage
5717
+ */
5718
+ minimum_charge: string;
5719
+ /**
5720
+ * The base price charged per group
5721
+ */
5722
+ per_unit_rate: string;
5723
+ }
5724
+ }
5725
+ interface NewFloatingPercentCompositePrice {
5726
+ /**
5727
+ * The cadence to bill for this price on.
5728
+ */
5729
+ cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
5730
+ /**
5731
+ * An ISO 4217 currency string for which this price is billed in.
5732
+ */
5733
+ currency: string;
5734
+ /**
5735
+ * The id of the item the price will be associated with.
5736
+ */
5737
+ item_id: string;
5738
+ /**
5739
+ * The pricing model type
5740
+ */
5741
+ model_type: 'percent';
5742
+ /**
5743
+ * The name of the price.
5744
+ */
5745
+ name: string;
5746
+ /**
5747
+ * Configuration for percent pricing
5370
5748
  */
5371
5749
  percent_config: NewFloatingPercentCompositePrice.PercentConfig;
5372
5750
  /**
@@ -5844,7 +6222,7 @@ export declare namespace SubscriptionSchedulePlanChangeParams {
5844
6222
  /**
5845
6223
  * New subscription price request body params.
5846
6224
  */
5847
- price?: SubscriptionsAPI.NewSubscriptionUnitPrice | SubscriptionsAPI.NewSubscriptionTieredPrice | SubscriptionsAPI.NewSubscriptionBulkPrice | SubscriptionsAPI.NewSubscriptionPackagePrice | SubscriptionsAPI.NewSubscriptionMatrixPrice | SubscriptionsAPI.NewSubscriptionThresholdTotalAmountPrice | SubscriptionsAPI.NewSubscriptionTieredPackagePrice | SubscriptionsAPI.NewSubscriptionTieredWithMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPrice | SubscriptionsAPI.NewSubscriptionTieredPackageWithMinimumPrice | SubscriptionsAPI.NewSubscriptionPackageWithAllocationPrice | SubscriptionsAPI.NewSubscriptionUnitWithPercentPrice | SubscriptionsAPI.NewSubscriptionMatrixWithAllocationPrice | 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 | SubscriptionsAPI.NewSubscriptionMinimumCompositePrice | AddPrice.NewSubscriptionPercentCompositePrice | AddPrice.NewSubscriptionEventOutputPrice | null;
6225
+ 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.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 | SubscriptionsAPI.NewSubscriptionMinimumCompositePrice | AddPrice.NewSubscriptionPercentCompositePrice | AddPrice.NewSubscriptionEventOutputPrice | null;
5848
6226
  /**
5849
6227
  * The id of the price to add to the subscription.
5850
6228
  */
@@ -5857,6 +6235,134 @@ export declare namespace SubscriptionSchedulePlanChangeParams {
5857
6235
  start_date?: string | null;
5858
6236
  }
5859
6237
  namespace AddPrice {
6238
+ interface NewSubscriptionBulkWithFiltersPrice {
6239
+ /**
6240
+ * Configuration for bulk_with_filters pricing
6241
+ */
6242
+ bulk_with_filters_config: NewSubscriptionBulkWithFiltersPrice.BulkWithFiltersConfig;
6243
+ /**
6244
+ * The cadence to bill for this price on.
6245
+ */
6246
+ cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
6247
+ /**
6248
+ * The id of the item the price will be associated with.
6249
+ */
6250
+ item_id: string;
6251
+ /**
6252
+ * The pricing model type
6253
+ */
6254
+ model_type: 'bulk_with_filters';
6255
+ /**
6256
+ * The name of the price.
6257
+ */
6258
+ name: string;
6259
+ /**
6260
+ * The id of the billable metric for the price. Only needed if the price is
6261
+ * usage-based.
6262
+ */
6263
+ billable_metric_id?: string | null;
6264
+ /**
6265
+ * If the Price represents a fixed cost, the price will be billed in-advance if
6266
+ * this is true, and in-arrears if this is false.
6267
+ */
6268
+ billed_in_advance?: boolean | null;
6269
+ /**
6270
+ * For custom cadence: specifies the duration of the billing period in days or
6271
+ * months.
6272
+ */
6273
+ billing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
6274
+ /**
6275
+ * The per unit conversion rate of the price currency to the invoicing currency.
6276
+ */
6277
+ conversion_rate?: number | null;
6278
+ /**
6279
+ * The configuration for the rate of the price currency to the invoicing currency.
6280
+ */
6281
+ conversion_rate_config?: Shared.UnitConversionRateConfig | Shared.TieredConversionRateConfig | null;
6282
+ /**
6283
+ * An ISO 4217 currency string, or custom pricing unit identifier, in which this
6284
+ * price is billed.
6285
+ */
6286
+ currency?: string | null;
6287
+ /**
6288
+ * For dimensional price: specifies a price group and dimension values
6289
+ */
6290
+ dimensional_price_configuration?: Shared.NewDimensionalPriceConfiguration | null;
6291
+ /**
6292
+ * An alias for the price.
6293
+ */
6294
+ external_price_id?: string | null;
6295
+ /**
6296
+ * If the Price represents a fixed cost, this represents the quantity of units
6297
+ * applied.
6298
+ */
6299
+ fixed_price_quantity?: number | null;
6300
+ /**
6301
+ * The property used to group this price on an invoice
6302
+ */
6303
+ invoice_grouping_key?: string | null;
6304
+ /**
6305
+ * Within each billing cycle, specifies the cadence at which invoices are produced.
6306
+ * If unspecified, a single invoice is produced per billing cycle.
6307
+ */
6308
+ invoicing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
6309
+ /**
6310
+ * User-specified key/value pairs for the resource. Individual keys can be removed
6311
+ * by setting the value to `null`, and the entire metadata mapping can be cleared
6312
+ * by setting `metadata` to `null`.
6313
+ */
6314
+ metadata?: {
6315
+ [key: string]: string | null;
6316
+ } | null;
6317
+ /**
6318
+ * A transient ID that can be used to reference this price when adding adjustments
6319
+ * in the same API call.
6320
+ */
6321
+ reference_id?: string | null;
6322
+ }
6323
+ namespace NewSubscriptionBulkWithFiltersPrice {
6324
+ /**
6325
+ * Configuration for bulk_with_filters pricing
6326
+ */
6327
+ interface BulkWithFiltersConfig {
6328
+ /**
6329
+ * Property filters to apply (all must match)
6330
+ */
6331
+ filters: Array<BulkWithFiltersConfig.Filter>;
6332
+ /**
6333
+ * Bulk tiers for rating based on total usage volume
6334
+ */
6335
+ tiers: Array<BulkWithFiltersConfig.Tier>;
6336
+ }
6337
+ namespace BulkWithFiltersConfig {
6338
+ /**
6339
+ * Configuration for a single property filter
6340
+ */
6341
+ interface Filter {
6342
+ /**
6343
+ * Event property key to filter on
6344
+ */
6345
+ property_key: string;
6346
+ /**
6347
+ * Event property value to match
6348
+ */
6349
+ property_value: string;
6350
+ }
6351
+ /**
6352
+ * Configuration for a single bulk pricing tier
6353
+ */
6354
+ interface Tier {
6355
+ /**
6356
+ * Amount per unit
6357
+ */
6358
+ unit_amount: string;
6359
+ /**
6360
+ * The lower bound for this tier
6361
+ */
6362
+ tier_lower_bound?: string | null;
6363
+ }
6364
+ }
6365
+ }
5860
6366
  interface NewSubscriptionTieredWithProrationPrice {
5861
6367
  /**
5862
6368
  * The cadence to bill for this price on.
@@ -6336,13 +6842,141 @@ export declare namespace SubscriptionSchedulePlanChangeParams {
6336
6842
  /**
6337
6843
  * New subscription price request body params.
6338
6844
  */
6339
- price?: SubscriptionsAPI.NewSubscriptionUnitPrice | SubscriptionsAPI.NewSubscriptionTieredPrice | SubscriptionsAPI.NewSubscriptionBulkPrice | SubscriptionsAPI.NewSubscriptionPackagePrice | SubscriptionsAPI.NewSubscriptionMatrixPrice | SubscriptionsAPI.NewSubscriptionThresholdTotalAmountPrice | SubscriptionsAPI.NewSubscriptionTieredPackagePrice | SubscriptionsAPI.NewSubscriptionTieredWithMinimumPrice | SubscriptionsAPI.NewSubscriptionGroupedTieredPrice | SubscriptionsAPI.NewSubscriptionTieredPackageWithMinimumPrice | SubscriptionsAPI.NewSubscriptionPackageWithAllocationPrice | SubscriptionsAPI.NewSubscriptionUnitWithPercentPrice | SubscriptionsAPI.NewSubscriptionMatrixWithAllocationPrice | 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 | SubscriptionsAPI.NewSubscriptionMinimumCompositePrice | ReplacePrice.NewSubscriptionPercentCompositePrice | ReplacePrice.NewSubscriptionEventOutputPrice | null;
6845
+ 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.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 | SubscriptionsAPI.NewSubscriptionMinimumCompositePrice | ReplacePrice.NewSubscriptionPercentCompositePrice | ReplacePrice.NewSubscriptionEventOutputPrice | null;
6340
6846
  /**
6341
6847
  * The id of the price to add to the subscription.
6342
6848
  */
6343
6849
  price_id?: string | null;
6344
6850
  }
6345
6851
  namespace ReplacePrice {
6852
+ interface NewSubscriptionBulkWithFiltersPrice {
6853
+ /**
6854
+ * Configuration for bulk_with_filters pricing
6855
+ */
6856
+ bulk_with_filters_config: NewSubscriptionBulkWithFiltersPrice.BulkWithFiltersConfig;
6857
+ /**
6858
+ * The cadence to bill for this price on.
6859
+ */
6860
+ cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
6861
+ /**
6862
+ * The id of the item the price will be associated with.
6863
+ */
6864
+ item_id: string;
6865
+ /**
6866
+ * The pricing model type
6867
+ */
6868
+ model_type: 'bulk_with_filters';
6869
+ /**
6870
+ * The name of the price.
6871
+ */
6872
+ name: string;
6873
+ /**
6874
+ * The id of the billable metric for the price. Only needed if the price is
6875
+ * usage-based.
6876
+ */
6877
+ billable_metric_id?: string | null;
6878
+ /**
6879
+ * If the Price represents a fixed cost, the price will be billed in-advance if
6880
+ * this is true, and in-arrears if this is false.
6881
+ */
6882
+ billed_in_advance?: boolean | null;
6883
+ /**
6884
+ * For custom cadence: specifies the duration of the billing period in days or
6885
+ * months.
6886
+ */
6887
+ billing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
6888
+ /**
6889
+ * The per unit conversion rate of the price currency to the invoicing currency.
6890
+ */
6891
+ conversion_rate?: number | null;
6892
+ /**
6893
+ * The configuration for the rate of the price currency to the invoicing currency.
6894
+ */
6895
+ conversion_rate_config?: Shared.UnitConversionRateConfig | Shared.TieredConversionRateConfig | null;
6896
+ /**
6897
+ * An ISO 4217 currency string, or custom pricing unit identifier, in which this
6898
+ * price is billed.
6899
+ */
6900
+ currency?: string | null;
6901
+ /**
6902
+ * For dimensional price: specifies a price group and dimension values
6903
+ */
6904
+ dimensional_price_configuration?: Shared.NewDimensionalPriceConfiguration | null;
6905
+ /**
6906
+ * An alias for the price.
6907
+ */
6908
+ external_price_id?: string | null;
6909
+ /**
6910
+ * If the Price represents a fixed cost, this represents the quantity of units
6911
+ * applied.
6912
+ */
6913
+ fixed_price_quantity?: number | null;
6914
+ /**
6915
+ * The property used to group this price on an invoice
6916
+ */
6917
+ invoice_grouping_key?: string | null;
6918
+ /**
6919
+ * Within each billing cycle, specifies the cadence at which invoices are produced.
6920
+ * If unspecified, a single invoice is produced per billing cycle.
6921
+ */
6922
+ invoicing_cycle_configuration?: Shared.NewBillingCycleConfiguration | null;
6923
+ /**
6924
+ * User-specified key/value pairs for the resource. Individual keys can be removed
6925
+ * by setting the value to `null`, and the entire metadata mapping can be cleared
6926
+ * by setting `metadata` to `null`.
6927
+ */
6928
+ metadata?: {
6929
+ [key: string]: string | null;
6930
+ } | null;
6931
+ /**
6932
+ * A transient ID that can be used to reference this price when adding adjustments
6933
+ * in the same API call.
6934
+ */
6935
+ reference_id?: string | null;
6936
+ }
6937
+ namespace NewSubscriptionBulkWithFiltersPrice {
6938
+ /**
6939
+ * Configuration for bulk_with_filters pricing
6940
+ */
6941
+ interface BulkWithFiltersConfig {
6942
+ /**
6943
+ * Property filters to apply (all must match)
6944
+ */
6945
+ filters: Array<BulkWithFiltersConfig.Filter>;
6946
+ /**
6947
+ * Bulk tiers for rating based on total usage volume
6948
+ */
6949
+ tiers: Array<BulkWithFiltersConfig.Tier>;
6950
+ }
6951
+ namespace BulkWithFiltersConfig {
6952
+ /**
6953
+ * Configuration for a single property filter
6954
+ */
6955
+ interface Filter {
6956
+ /**
6957
+ * Event property key to filter on
6958
+ */
6959
+ property_key: string;
6960
+ /**
6961
+ * Event property value to match
6962
+ */
6963
+ property_value: string;
6964
+ }
6965
+ /**
6966
+ * Configuration for a single bulk pricing tier
6967
+ */
6968
+ interface Tier {
6969
+ /**
6970
+ * Amount per unit
6971
+ */
6972
+ unit_amount: string;
6973
+ /**
6974
+ * The lower bound for this tier
6975
+ */
6976
+ tier_lower_bound?: string | null;
6977
+ }
6978
+ }
6979
+ }
6346
6980
  interface NewSubscriptionTieredWithProrationPrice {
6347
6981
  /**
6348
6982
  * The cadence to bill for this price on.