orb-billing 4.73.0 → 5.0.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 (141) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/README.md +18 -30
  3. package/index.d.mts +148 -14
  4. package/index.d.ts +148 -14
  5. package/index.d.ts.map +1 -1
  6. package/index.js +0 -3
  7. package/index.js.map +1 -1
  8. package/index.mjs +3 -6
  9. package/index.mjs.map +1 -1
  10. package/package.json +1 -1
  11. package/resources/alerts.d.ts +20 -88
  12. package/resources/alerts.d.ts.map +1 -1
  13. package/resources/alerts.js.map +1 -1
  14. package/resources/alerts.mjs.map +1 -1
  15. package/resources/beta/beta.d.ts +9 -7313
  16. package/resources/beta/beta.d.ts.map +1 -1
  17. package/resources/beta/beta.js.map +1 -1
  18. package/resources/beta/beta.mjs.map +1 -1
  19. package/resources/beta/external-plan-id.d.ts +7 -7074
  20. package/resources/beta/external-plan-id.d.ts.map +1 -1
  21. package/resources/beta/external-plan-id.js.map +1 -1
  22. package/resources/beta/external-plan-id.mjs.map +1 -1
  23. package/resources/credit-notes.d.ts +9 -163
  24. package/resources/credit-notes.d.ts.map +1 -1
  25. package/resources/credit-notes.js +3 -6
  26. package/resources/credit-notes.js.map +1 -1
  27. package/resources/credit-notes.mjs +2 -4
  28. package/resources/credit-notes.mjs.map +1 -1
  29. package/resources/customers/balance-transactions.d.ts +5 -32
  30. package/resources/customers/balance-transactions.d.ts.map +1 -1
  31. package/resources/customers/balance-transactions.js.map +1 -1
  32. package/resources/customers/balance-transactions.mjs.map +1 -1
  33. package/resources/customers/costs.d.ts +3 -81
  34. package/resources/customers/costs.d.ts.map +1 -1
  35. package/resources/customers/credits/credits.d.ts +4 -4
  36. package/resources/customers/credits/credits.d.ts.map +1 -1
  37. package/resources/customers/credits/credits.js.map +1 -1
  38. package/resources/customers/credits/credits.mjs.map +1 -1
  39. package/resources/customers/credits/index.d.ts +2 -2
  40. package/resources/customers/credits/index.d.ts.map +1 -1
  41. package/resources/customers/credits/index.js.map +1 -1
  42. package/resources/customers/credits/index.mjs.map +1 -1
  43. package/resources/customers/credits/ledger.d.ts +171 -962
  44. package/resources/customers/credits/ledger.d.ts.map +1 -1
  45. package/resources/customers/credits/ledger.js.map +1 -1
  46. package/resources/customers/credits/ledger.mjs.map +1 -1
  47. package/resources/customers/credits/top-ups.d.ts +37 -117
  48. package/resources/customers/credits/top-ups.d.ts.map +1 -1
  49. package/resources/customers/credits/top-ups.js.map +1 -1
  50. package/resources/customers/credits/top-ups.mjs.map +1 -1
  51. package/resources/customers/customers.d.ts +72 -678
  52. package/resources/customers/customers.d.ts.map +1 -1
  53. package/resources/customers/customers.js.map +1 -1
  54. package/resources/customers/customers.mjs.map +1 -1
  55. package/resources/customers/index.d.ts +1 -1
  56. package/resources/customers/index.d.ts.map +1 -1
  57. package/resources/customers/index.js.map +1 -1
  58. package/resources/customers/index.mjs.map +1 -1
  59. package/resources/events/events.d.ts +3 -3
  60. package/resources/events/events.d.ts.map +1 -1
  61. package/resources/index.d.ts +7 -7
  62. package/resources/index.d.ts.map +1 -1
  63. package/resources/index.js +1 -4
  64. package/resources/index.js.map +1 -1
  65. package/resources/index.mjs +3 -3
  66. package/resources/index.mjs.map +1 -1
  67. package/resources/invoice-line-items.d.ts +6 -395
  68. package/resources/invoice-line-items.d.ts.map +1 -1
  69. package/resources/invoice-line-items.js.map +1 -1
  70. package/resources/invoice-line-items.mjs.map +1 -1
  71. package/resources/invoices.d.ts +30 -1700
  72. package/resources/invoices.d.ts.map +1 -1
  73. package/resources/invoices.js +3 -6
  74. package/resources/invoices.js.map +1 -1
  75. package/resources/invoices.mjs +2 -4
  76. package/resources/invoices.mjs.map +1 -1
  77. package/resources/plans/plans.d.ts +7 -3801
  78. package/resources/plans/plans.d.ts.map +1 -1
  79. package/resources/plans/plans.js.map +1 -1
  80. package/resources/plans/plans.mjs.map +1 -1
  81. package/resources/prices/external-price-id.d.ts +3 -3
  82. package/resources/prices/external-price-id.d.ts.map +1 -1
  83. package/resources/prices/index.d.ts +1 -1
  84. package/resources/prices/index.d.ts.map +1 -1
  85. package/resources/prices/index.js +1 -2
  86. package/resources/prices/index.js.map +1 -1
  87. package/resources/prices/index.mjs +1 -1
  88. package/resources/prices/index.mjs.map +1 -1
  89. package/resources/prices/prices.d.ts +347 -9373
  90. package/resources/prices/prices.d.ts.map +1 -1
  91. package/resources/prices/prices.js +39 -20
  92. package/resources/prices/prices.js.map +1 -1
  93. package/resources/prices/prices.mjs +38 -18
  94. package/resources/prices/prices.mjs.map +1 -1
  95. package/resources/shared.d.ts +7269 -9
  96. package/resources/shared.d.ts.map +1 -1
  97. package/resources/shared.js +11 -0
  98. package/resources/shared.js.map +1 -1
  99. package/resources/shared.mjs +7 -1
  100. package/resources/shared.mjs.map +1 -1
  101. package/resources/subscription-changes.d.ts +138 -2158
  102. package/resources/subscription-changes.d.ts.map +1 -1
  103. package/resources/subscription-changes.js.map +1 -1
  104. package/resources/subscription-changes.mjs.map +1 -1
  105. package/resources/subscriptions.d.ts +2722 -26580
  106. package/resources/subscriptions.d.ts.map +1 -1
  107. package/resources/subscriptions.js +7 -1
  108. package/resources/subscriptions.js.map +1 -1
  109. package/resources/subscriptions.mjs +7 -1
  110. package/resources/subscriptions.mjs.map +1 -1
  111. package/src/index.ts +221 -40
  112. package/src/resources/alerts.ts +20 -94
  113. package/src/resources/beta/beta.ts +124 -8892
  114. package/src/resources/beta/external-plan-id.ts +118 -8593
  115. package/src/resources/credit-notes.ts +10 -217
  116. package/src/resources/customers/balance-transactions.ts +5 -36
  117. package/src/resources/customers/costs.ts +3 -101
  118. package/src/resources/customers/credits/credits.ts +18 -0
  119. package/src/resources/customers/credits/index.ts +9 -0
  120. package/src/resources/customers/credits/ledger.ts +212 -1435
  121. package/src/resources/customers/credits/top-ups.ts +41 -132
  122. package/src/resources/customers/customers.ts +162 -1454
  123. package/src/resources/customers/index.ts +8 -0
  124. package/src/resources/events/events.ts +3 -3
  125. package/src/resources/index.ts +43 -21
  126. package/src/resources/invoice-line-items.ts +10 -501
  127. package/src/resources/invoices.ts +60 -2394
  128. package/src/resources/plans/plans.ts +38 -4588
  129. package/src/resources/prices/external-price-id.ts +3 -3
  130. package/src/resources/prices/index.ts +2 -2
  131. package/src/resources/prices/prices.ts +501 -11811
  132. package/src/resources/shared.ts +9582 -22
  133. package/src/resources/subscription-changes.ts +171 -2670
  134. package/src/resources/subscriptions.ts +3175 -31993
  135. package/src/version.ts +1 -1
  136. package/version.d.ts +1 -1
  137. package/version.d.ts.map +1 -1
  138. package/version.js +1 -1
  139. package/version.js.map +1 -1
  140. package/version.mjs +1 -1
  141. package/version.mjs.map +1 -1
@@ -3,7 +3,6 @@ import * as Core from "../../core.js";
3
3
  import * as Shared from "../shared.js";
4
4
  import * as ExternalPlanIDAPI from "./external-plan-id.js";
5
5
  import { ExternalPlanID, ExternalPlanIDUpdateParams } from "./external-plan-id.js";
6
- import * as PricesAPI from "../prices/prices.js";
7
6
  import { Page, type PageParams } from "../../pagination.js";
8
7
  export declare class Plans extends APIResource {
9
8
  externalPlanId: ExternalPlanIDAPI.ExternalPlanID;
@@ -62,7 +61,7 @@ export interface Plan {
62
61
  * Adjustments for this plan. If the plan has phases, this includes adjustments
63
62
  * across all phases of the plan.
64
63
  */
65
- adjustments: Array<Plan.PlanPhaseUsageDiscountAdjustment | Plan.PlanPhaseAmountDiscountAdjustment | Plan.PlanPhasePercentageDiscountAdjustment | Plan.PlanPhaseMinimumAdjustment | Plan.PlanPhaseMaximumAdjustment>;
64
+ adjustments: Array<Shared.PlanPhaseUsageDiscountAdjustment | Shared.PlanPhaseAmountDiscountAdjustment | Shared.PlanPhasePercentageDiscountAdjustment | Shared.PlanPhaseMinimumAdjustment | Shared.PlanPhaseMaximumAdjustment>;
66
65
  base_plan: Plan.BasePlan | null;
67
66
  /**
68
67
  * The parent plan id if the given plan was created by overriding one or more of
@@ -99,7 +98,7 @@ export interface Plan {
99
98
  /**
100
99
  * @deprecated
101
100
  */
102
- maximum: Plan.Maximum | null;
101
+ maximum: Shared.Maximum | null;
103
102
  /**
104
103
  * @deprecated
105
104
  */
@@ -114,7 +113,7 @@ export interface Plan {
114
113
  /**
115
114
  * @deprecated
116
115
  */
117
- minimum: Plan.Minimum | null;
116
+ minimum: Shared.Minimum | null;
118
117
  /**
119
118
  * @deprecated
120
119
  */
@@ -133,247 +132,13 @@ export interface Plan {
133
132
  * Prices for this plan. If the plan has phases, this includes prices across all
134
133
  * phases of the plan.
135
134
  */
136
- prices: Array<PricesAPI.Price>;
135
+ prices: Array<Shared.Price>;
137
136
  product: Plan.Product;
138
137
  status: 'active' | 'archived' | 'draft';
139
138
  trial_config: Plan.TrialConfig;
140
139
  version: number;
141
140
  }
142
141
  export declare namespace Plan {
143
- interface PlanPhaseUsageDiscountAdjustment {
144
- id: string;
145
- adjustment_type: 'usage_discount';
146
- /**
147
- * @deprecated The price IDs that this adjustment applies to.
148
- */
149
- applies_to_price_ids: Array<string>;
150
- /**
151
- * The filters that determine which prices to apply this adjustment to.
152
- */
153
- filters: Array<PlanPhaseUsageDiscountAdjustment.Filter>;
154
- /**
155
- * True for adjustments that apply to an entire invocice, false for adjustments
156
- * that apply to only one price.
157
- */
158
- is_invoice_level: boolean;
159
- /**
160
- * The plan phase in which this adjustment is active.
161
- */
162
- plan_phase_order: number | null;
163
- /**
164
- * The reason for the adjustment.
165
- */
166
- reason: string | null;
167
- /**
168
- * The number of usage units by which to discount the price this adjustment applies
169
- * to in a given billing period.
170
- */
171
- usage_discount: number;
172
- }
173
- namespace PlanPhaseUsageDiscountAdjustment {
174
- interface Filter {
175
- /**
176
- * The property of the price to filter on.
177
- */
178
- field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
179
- /**
180
- * Should prices that match the filter be included or excluded.
181
- */
182
- operator: 'includes' | 'excludes';
183
- /**
184
- * The IDs or values that match this filter.
185
- */
186
- values: Array<string>;
187
- }
188
- }
189
- interface PlanPhaseAmountDiscountAdjustment {
190
- id: string;
191
- adjustment_type: 'amount_discount';
192
- /**
193
- * The amount by which to discount the prices this adjustment applies to in a given
194
- * billing period.
195
- */
196
- amount_discount: string;
197
- /**
198
- * @deprecated The price IDs that this adjustment applies to.
199
- */
200
- applies_to_price_ids: Array<string>;
201
- /**
202
- * The filters that determine which prices to apply this adjustment to.
203
- */
204
- filters: Array<PlanPhaseAmountDiscountAdjustment.Filter>;
205
- /**
206
- * True for adjustments that apply to an entire invocice, false for adjustments
207
- * that apply to only one price.
208
- */
209
- is_invoice_level: boolean;
210
- /**
211
- * The plan phase in which this adjustment is active.
212
- */
213
- plan_phase_order: number | null;
214
- /**
215
- * The reason for the adjustment.
216
- */
217
- reason: string | null;
218
- }
219
- namespace PlanPhaseAmountDiscountAdjustment {
220
- interface Filter {
221
- /**
222
- * The property of the price to filter on.
223
- */
224
- field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
225
- /**
226
- * Should prices that match the filter be included or excluded.
227
- */
228
- operator: 'includes' | 'excludes';
229
- /**
230
- * The IDs or values that match this filter.
231
- */
232
- values: Array<string>;
233
- }
234
- }
235
- interface PlanPhasePercentageDiscountAdjustment {
236
- id: string;
237
- adjustment_type: 'percentage_discount';
238
- /**
239
- * @deprecated The price IDs that this adjustment applies to.
240
- */
241
- applies_to_price_ids: Array<string>;
242
- /**
243
- * The filters that determine which prices to apply this adjustment to.
244
- */
245
- filters: Array<PlanPhasePercentageDiscountAdjustment.Filter>;
246
- /**
247
- * True for adjustments that apply to an entire invocice, false for adjustments
248
- * that apply to only one price.
249
- */
250
- is_invoice_level: boolean;
251
- /**
252
- * The percentage (as a value between 0 and 1) by which to discount the price
253
- * intervals this adjustment applies to in a given billing period.
254
- */
255
- percentage_discount: number;
256
- /**
257
- * The plan phase in which this adjustment is active.
258
- */
259
- plan_phase_order: number | null;
260
- /**
261
- * The reason for the adjustment.
262
- */
263
- reason: string | null;
264
- }
265
- namespace PlanPhasePercentageDiscountAdjustment {
266
- interface Filter {
267
- /**
268
- * The property of the price to filter on.
269
- */
270
- field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
271
- /**
272
- * Should prices that match the filter be included or excluded.
273
- */
274
- operator: 'includes' | 'excludes';
275
- /**
276
- * The IDs or values that match this filter.
277
- */
278
- values: Array<string>;
279
- }
280
- }
281
- interface PlanPhaseMinimumAdjustment {
282
- id: string;
283
- adjustment_type: 'minimum';
284
- /**
285
- * @deprecated The price IDs that this adjustment applies to.
286
- */
287
- applies_to_price_ids: Array<string>;
288
- /**
289
- * The filters that determine which prices to apply this adjustment to.
290
- */
291
- filters: Array<PlanPhaseMinimumAdjustment.Filter>;
292
- /**
293
- * True for adjustments that apply to an entire invocice, false for adjustments
294
- * that apply to only one price.
295
- */
296
- is_invoice_level: boolean;
297
- /**
298
- * The item ID that revenue from this minimum will be attributed to.
299
- */
300
- item_id: string;
301
- /**
302
- * The minimum amount to charge in a given billing period for the prices this
303
- * adjustment applies to.
304
- */
305
- minimum_amount: string;
306
- /**
307
- * The plan phase in which this adjustment is active.
308
- */
309
- plan_phase_order: number | null;
310
- /**
311
- * The reason for the adjustment.
312
- */
313
- reason: string | null;
314
- }
315
- namespace PlanPhaseMinimumAdjustment {
316
- interface Filter {
317
- /**
318
- * The property of the price to filter on.
319
- */
320
- field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
321
- /**
322
- * Should prices that match the filter be included or excluded.
323
- */
324
- operator: 'includes' | 'excludes';
325
- /**
326
- * The IDs or values that match this filter.
327
- */
328
- values: Array<string>;
329
- }
330
- }
331
- interface PlanPhaseMaximumAdjustment {
332
- id: string;
333
- adjustment_type: 'maximum';
334
- /**
335
- * @deprecated The price IDs that this adjustment applies to.
336
- */
337
- applies_to_price_ids: Array<string>;
338
- /**
339
- * The filters that determine which prices to apply this adjustment to.
340
- */
341
- filters: Array<PlanPhaseMaximumAdjustment.Filter>;
342
- /**
343
- * True for adjustments that apply to an entire invocice, false for adjustments
344
- * that apply to only one price.
345
- */
346
- is_invoice_level: boolean;
347
- /**
348
- * The maximum amount to charge in a given billing period for the prices this
349
- * adjustment applies to.
350
- */
351
- maximum_amount: string;
352
- /**
353
- * The plan phase in which this adjustment is active.
354
- */
355
- plan_phase_order: number | null;
356
- /**
357
- * The reason for the adjustment.
358
- */
359
- reason: string | null;
360
- }
361
- namespace PlanPhaseMaximumAdjustment {
362
- interface Filter {
363
- /**
364
- * The property of the price to filter on.
365
- */
366
- field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
367
- /**
368
- * Should prices that match the filter be included or excluded.
369
- */
370
- operator: 'includes' | 'excludes';
371
- /**
372
- * The IDs or values that match this filter.
373
- */
374
- values: Array<string>;
375
- }
376
- }
377
142
  interface BasePlan {
378
143
  id: string | null;
379
144
  /**
@@ -384,74 +149,6 @@ export declare namespace Plan {
384
149
  external_plan_id: string | null;
385
150
  name: string | null;
386
151
  }
387
- /**
388
- * @deprecated
389
- */
390
- interface Maximum {
391
- /**
392
- * @deprecated List of price_ids that this maximum amount applies to. For plan/plan
393
- * phase maximums, this can be a subset of prices.
394
- */
395
- applies_to_price_ids: Array<string>;
396
- /**
397
- * The filters that determine which prices to apply this maximum to.
398
- */
399
- filters: Array<Maximum.Filter>;
400
- /**
401
- * Maximum amount applied
402
- */
403
- maximum_amount: string;
404
- }
405
- namespace Maximum {
406
- interface Filter {
407
- /**
408
- * The property of the price to filter on.
409
- */
410
- field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
411
- /**
412
- * Should prices that match the filter be included or excluded.
413
- */
414
- operator: 'includes' | 'excludes';
415
- /**
416
- * The IDs or values that match this filter.
417
- */
418
- values: Array<string>;
419
- }
420
- }
421
- /**
422
- * @deprecated
423
- */
424
- interface Minimum {
425
- /**
426
- * @deprecated List of price_ids that this minimum amount applies to. For plan/plan
427
- * phase minimums, this can be a subset of prices.
428
- */
429
- applies_to_price_ids: Array<string>;
430
- /**
431
- * The filters that determine which prices to apply this minimum to.
432
- */
433
- filters: Array<Minimum.Filter>;
434
- /**
435
- * Minimum amount applied
436
- */
437
- minimum_amount: string;
438
- }
439
- namespace Minimum {
440
- interface Filter {
441
- /**
442
- * The property of the price to filter on.
443
- */
444
- field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
445
- /**
446
- * Should prices that match the filter be included or excluded.
447
- */
448
- operator: 'includes' | 'excludes';
449
- /**
450
- * The IDs or values that match this filter.
451
- */
452
- values: Array<string>;
453
- }
454
- }
455
152
  interface PlanPhase {
456
153
  id: string;
457
154
  description: string | null;
@@ -462,9 +159,9 @@ export declare namespace Plan {
462
159
  */
463
160
  duration: number | null;
464
161
  duration_unit: 'daily' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | null;
465
- maximum: PlanPhase.Maximum | null;
162
+ maximum: Shared.Maximum | null;
466
163
  maximum_amount: string | null;
467
- minimum: PlanPhase.Minimum | null;
164
+ minimum: Shared.Minimum | null;
468
165
  minimum_amount: string | null;
469
166
  name: string;
470
167
  /**
@@ -472,70 +169,6 @@ export declare namespace Plan {
472
169
  */
473
170
  order: number;
474
171
  }
475
- namespace PlanPhase {
476
- interface Maximum {
477
- /**
478
- * @deprecated List of price_ids that this maximum amount applies to. For plan/plan
479
- * phase maximums, this can be a subset of prices.
480
- */
481
- applies_to_price_ids: Array<string>;
482
- /**
483
- * The filters that determine which prices to apply this maximum to.
484
- */
485
- filters: Array<Maximum.Filter>;
486
- /**
487
- * Maximum amount applied
488
- */
489
- maximum_amount: string;
490
- }
491
- namespace Maximum {
492
- interface Filter {
493
- /**
494
- * The property of the price to filter on.
495
- */
496
- field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
497
- /**
498
- * Should prices that match the filter be included or excluded.
499
- */
500
- operator: 'includes' | 'excludes';
501
- /**
502
- * The IDs or values that match this filter.
503
- */
504
- values: Array<string>;
505
- }
506
- }
507
- interface Minimum {
508
- /**
509
- * @deprecated List of price_ids that this minimum amount applies to. For plan/plan
510
- * phase minimums, this can be a subset of prices.
511
- */
512
- applies_to_price_ids: Array<string>;
513
- /**
514
- * The filters that determine which prices to apply this minimum to.
515
- */
516
- filters: Array<Minimum.Filter>;
517
- /**
518
- * Minimum amount applied
519
- */
520
- minimum_amount: string;
521
- }
522
- namespace Minimum {
523
- interface Filter {
524
- /**
525
- * The property of the price to filter on.
526
- */
527
- field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
528
- /**
529
- * Should prices that match the filter be included or excluded.
530
- */
531
- operator: 'includes' | 'excludes';
532
- /**
533
- * The IDs or values that match this filter.
534
- */
535
- values: Array<string>;
536
- }
537
- }
538
- }
539
172
  interface Product {
540
173
  id: string;
541
174
  created_at: string;
@@ -557,7 +190,7 @@ export interface PlanCreateParams {
557
190
  * Prices for this plan. If the plan has phases, this includes prices across all
558
191
  * phases of the plan.
559
192
  */
560
- prices: Array<PlanCreateParams.NewPlanUnitPrice | PlanCreateParams.NewPlanPackagePrice | PlanCreateParams.NewPlanMatrixPrice | PlanCreateParams.NewPlanTieredPrice | PlanCreateParams.NewPlanTieredBpsPrice | PlanCreateParams.NewPlanBpsPrice | PlanCreateParams.NewPlanBulkBpsPrice | PlanCreateParams.NewPlanBulkPrice | PlanCreateParams.NewPlanThresholdTotalAmountPrice | PlanCreateParams.NewPlanTieredPackagePrice | PlanCreateParams.NewPlanTieredWithMinimumPrice | PlanCreateParams.NewPlanUnitWithPercentPrice | PlanCreateParams.NewPlanPackageWithAllocationPrice | PlanCreateParams.NewPlanTierWithProrationPrice | PlanCreateParams.NewPlanUnitWithProrationPrice | PlanCreateParams.NewPlanGroupedAllocationPrice | PlanCreateParams.NewPlanGroupedWithProratedMinimumPrice | PlanCreateParams.NewPlanGroupedWithMeteredMinimumPrice | PlanCreateParams.NewPlanMatrixWithDisplayNamePrice | PlanCreateParams.NewPlanBulkWithProrationPrice | PlanCreateParams.NewPlanGroupedTieredPackagePrice | PlanCreateParams.NewPlanMaxGroupTieredPackagePrice | PlanCreateParams.NewPlanScalableMatrixWithUnitPricingPrice | PlanCreateParams.NewPlanScalableMatrixWithTieredPricingPrice | PlanCreateParams.NewPlanCumulativeGroupedBulkPrice | PlanCreateParams.NewPlanTieredPackageWithMinimumPrice | PlanCreateParams.NewPlanMatrixWithAllocationPrice | PlanCreateParams.NewPlanGroupedTieredPrice>;
193
+ prices: Array<Shared.NewPlanUnitPrice | Shared.NewPlanPackagePrice | Shared.NewPlanMatrixPrice | Shared.NewPlanTieredPrice | Shared.NewPlanTieredBPSPrice | Shared.NewPlanBPSPrice | Shared.NewPlanBulkBPSPrice | Shared.NewPlanBulkPrice | Shared.NewPlanThresholdTotalAmountPrice | Shared.NewPlanTieredPackagePrice | Shared.NewPlanTieredWithMinimumPrice | Shared.NewPlanUnitWithPercentPrice | Shared.NewPlanPackageWithAllocationPrice | Shared.NewPlanTierWithProrationPrice | Shared.NewPlanUnitWithProrationPrice | Shared.NewPlanGroupedAllocationPrice | Shared.NewPlanGroupedWithProratedMinimumPrice | Shared.NewPlanGroupedWithMeteredMinimumPrice | Shared.NewPlanMatrixWithDisplayNamePrice | Shared.NewPlanBulkWithProrationPrice | Shared.NewPlanGroupedTieredPackagePrice | Shared.NewPlanMaxGroupTieredPackagePrice | Shared.NewPlanScalableMatrixWithUnitPricingPrice | Shared.NewPlanScalableMatrixWithTieredPricingPrice | Shared.NewPlanCumulativeGroupedBulkPrice | Shared.NewPlanTieredPackageWithMinimumPrice | Shared.NewPlanMatrixWithAllocationPrice | Shared.NewPlanGroupedTieredPrice>;
561
194
  /**
562
195
  * Free-form text which is available on the invoice PDF and the Orb invoice portal.
563
196
  */
@@ -581,3433 +214,6 @@ export interface PlanCreateParams {
581
214
  */
582
215
  status?: 'active' | 'draft';
583
216
  }
584
- export declare namespace PlanCreateParams {
585
- interface NewPlanUnitPrice {
586
- /**
587
- * The cadence to bill for this price on.
588
- */
589
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
590
- /**
591
- * The id of the item the price will be associated with.
592
- */
593
- item_id: string;
594
- model_type: 'unit';
595
- /**
596
- * The name of the price.
597
- */
598
- name: string;
599
- unit_config: NewPlanUnitPrice.UnitConfig;
600
- /**
601
- * The id of the billable metric for the price. Only needed if the price is
602
- * usage-based.
603
- */
604
- billable_metric_id?: string | null;
605
- /**
606
- * If the Price represents a fixed cost, the price will be billed in-advance if
607
- * this is true, and in-arrears if this is false.
608
- */
609
- billed_in_advance?: boolean | null;
610
- /**
611
- * For custom cadence: specifies the duration of the billing period in days or
612
- * months.
613
- */
614
- billing_cycle_configuration?: NewPlanUnitPrice.BillingCycleConfiguration | null;
615
- /**
616
- * The per unit conversion rate of the price currency to the invoicing currency.
617
- */
618
- conversion_rate?: number | null;
619
- /**
620
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
621
- * price is billed.
622
- */
623
- currency?: string | null;
624
- /**
625
- * For dimensional price: specifies a price group and dimension values
626
- */
627
- dimensional_price_configuration?: NewPlanUnitPrice.DimensionalPriceConfiguration | null;
628
- /**
629
- * An alias for the price.
630
- */
631
- external_price_id?: string | null;
632
- /**
633
- * If the Price represents a fixed cost, this represents the quantity of units
634
- * applied.
635
- */
636
- fixed_price_quantity?: number | null;
637
- /**
638
- * The property used to group this price on an invoice
639
- */
640
- invoice_grouping_key?: string | null;
641
- /**
642
- * Within each billing cycle, specifies the cadence at which invoices are produced.
643
- * If unspecified, a single invoice is produced per billing cycle.
644
- */
645
- invoicing_cycle_configuration?: NewPlanUnitPrice.InvoicingCycleConfiguration | null;
646
- /**
647
- * User-specified key/value pairs for the resource. Individual keys can be removed
648
- * by setting the value to `null`, and the entire metadata mapping can be cleared
649
- * by setting `metadata` to `null`.
650
- */
651
- metadata?: Record<string, string | null> | null;
652
- }
653
- namespace NewPlanUnitPrice {
654
- interface UnitConfig {
655
- /**
656
- * Rate per unit of usage
657
- */
658
- unit_amount: string;
659
- }
660
- /**
661
- * For custom cadence: specifies the duration of the billing period in days or
662
- * months.
663
- */
664
- interface BillingCycleConfiguration {
665
- /**
666
- * The duration of the billing period.
667
- */
668
- duration: number;
669
- /**
670
- * The unit of billing period duration.
671
- */
672
- duration_unit: 'day' | 'month';
673
- }
674
- /**
675
- * For dimensional price: specifies a price group and dimension values
676
- */
677
- interface DimensionalPriceConfiguration {
678
- /**
679
- * The list of dimension values matching (in order) the dimensions of the price
680
- * group
681
- */
682
- dimension_values: Array<string>;
683
- /**
684
- * The id of the dimensional price group to include this price in
685
- */
686
- dimensional_price_group_id?: string | null;
687
- /**
688
- * The external id of the dimensional price group to include this price in
689
- */
690
- external_dimensional_price_group_id?: string | null;
691
- }
692
- /**
693
- * Within each billing cycle, specifies the cadence at which invoices are produced.
694
- * If unspecified, a single invoice is produced per billing cycle.
695
- */
696
- interface InvoicingCycleConfiguration {
697
- /**
698
- * The duration of the billing period.
699
- */
700
- duration: number;
701
- /**
702
- * The unit of billing period duration.
703
- */
704
- duration_unit: 'day' | 'month';
705
- }
706
- }
707
- interface NewPlanPackagePrice {
708
- /**
709
- * The cadence to bill for this price on.
710
- */
711
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
712
- /**
713
- * The id of the item the price will be associated with.
714
- */
715
- item_id: string;
716
- model_type: 'package';
717
- /**
718
- * The name of the price.
719
- */
720
- name: string;
721
- package_config: NewPlanPackagePrice.PackageConfig;
722
- /**
723
- * The id of the billable metric for the price. Only needed if the price is
724
- * usage-based.
725
- */
726
- billable_metric_id?: string | null;
727
- /**
728
- * If the Price represents a fixed cost, the price will be billed in-advance if
729
- * this is true, and in-arrears if this is false.
730
- */
731
- billed_in_advance?: boolean | null;
732
- /**
733
- * For custom cadence: specifies the duration of the billing period in days or
734
- * months.
735
- */
736
- billing_cycle_configuration?: NewPlanPackagePrice.BillingCycleConfiguration | null;
737
- /**
738
- * The per unit conversion rate of the price currency to the invoicing currency.
739
- */
740
- conversion_rate?: number | null;
741
- /**
742
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
743
- * price is billed.
744
- */
745
- currency?: string | null;
746
- /**
747
- * For dimensional price: specifies a price group and dimension values
748
- */
749
- dimensional_price_configuration?: NewPlanPackagePrice.DimensionalPriceConfiguration | null;
750
- /**
751
- * An alias for the price.
752
- */
753
- external_price_id?: string | null;
754
- /**
755
- * If the Price represents a fixed cost, this represents the quantity of units
756
- * applied.
757
- */
758
- fixed_price_quantity?: number | null;
759
- /**
760
- * The property used to group this price on an invoice
761
- */
762
- invoice_grouping_key?: string | null;
763
- /**
764
- * Within each billing cycle, specifies the cadence at which invoices are produced.
765
- * If unspecified, a single invoice is produced per billing cycle.
766
- */
767
- invoicing_cycle_configuration?: NewPlanPackagePrice.InvoicingCycleConfiguration | null;
768
- /**
769
- * User-specified key/value pairs for the resource. Individual keys can be removed
770
- * by setting the value to `null`, and the entire metadata mapping can be cleared
771
- * by setting `metadata` to `null`.
772
- */
773
- metadata?: Record<string, string | null> | null;
774
- }
775
- namespace NewPlanPackagePrice {
776
- interface PackageConfig {
777
- /**
778
- * A currency amount to rate usage by
779
- */
780
- package_amount: string;
781
- /**
782
- * An integer amount to represent package size. For example, 1000 here would divide
783
- * usage by 1000 before multiplying by package_amount in rating
784
- */
785
- package_size: number;
786
- }
787
- /**
788
- * For custom cadence: specifies the duration of the billing period in days or
789
- * months.
790
- */
791
- interface BillingCycleConfiguration {
792
- /**
793
- * The duration of the billing period.
794
- */
795
- duration: number;
796
- /**
797
- * The unit of billing period duration.
798
- */
799
- duration_unit: 'day' | 'month';
800
- }
801
- /**
802
- * For dimensional price: specifies a price group and dimension values
803
- */
804
- interface DimensionalPriceConfiguration {
805
- /**
806
- * The list of dimension values matching (in order) the dimensions of the price
807
- * group
808
- */
809
- dimension_values: Array<string>;
810
- /**
811
- * The id of the dimensional price group to include this price in
812
- */
813
- dimensional_price_group_id?: string | null;
814
- /**
815
- * The external id of the dimensional price group to include this price in
816
- */
817
- external_dimensional_price_group_id?: string | null;
818
- }
819
- /**
820
- * Within each billing cycle, specifies the cadence at which invoices are produced.
821
- * If unspecified, a single invoice is produced per billing cycle.
822
- */
823
- interface InvoicingCycleConfiguration {
824
- /**
825
- * The duration of the billing period.
826
- */
827
- duration: number;
828
- /**
829
- * The unit of billing period duration.
830
- */
831
- duration_unit: 'day' | 'month';
832
- }
833
- }
834
- interface NewPlanMatrixPrice {
835
- /**
836
- * The cadence to bill for this price on.
837
- */
838
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
839
- /**
840
- * The id of the item the price will be associated with.
841
- */
842
- item_id: string;
843
- matrix_config: NewPlanMatrixPrice.MatrixConfig;
844
- model_type: 'matrix';
845
- /**
846
- * The name of the price.
847
- */
848
- name: string;
849
- /**
850
- * The id of the billable metric for the price. Only needed if the price is
851
- * usage-based.
852
- */
853
- billable_metric_id?: string | null;
854
- /**
855
- * If the Price represents a fixed cost, the price will be billed in-advance if
856
- * this is true, and in-arrears if this is false.
857
- */
858
- billed_in_advance?: boolean | null;
859
- /**
860
- * For custom cadence: specifies the duration of the billing period in days or
861
- * months.
862
- */
863
- billing_cycle_configuration?: NewPlanMatrixPrice.BillingCycleConfiguration | null;
864
- /**
865
- * The per unit conversion rate of the price currency to the invoicing currency.
866
- */
867
- conversion_rate?: number | null;
868
- /**
869
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
870
- * price is billed.
871
- */
872
- currency?: string | null;
873
- /**
874
- * For dimensional price: specifies a price group and dimension values
875
- */
876
- dimensional_price_configuration?: NewPlanMatrixPrice.DimensionalPriceConfiguration | null;
877
- /**
878
- * An alias for the price.
879
- */
880
- external_price_id?: string | null;
881
- /**
882
- * If the Price represents a fixed cost, this represents the quantity of units
883
- * applied.
884
- */
885
- fixed_price_quantity?: number | null;
886
- /**
887
- * The property used to group this price on an invoice
888
- */
889
- invoice_grouping_key?: string | null;
890
- /**
891
- * Within each billing cycle, specifies the cadence at which invoices are produced.
892
- * If unspecified, a single invoice is produced per billing cycle.
893
- */
894
- invoicing_cycle_configuration?: NewPlanMatrixPrice.InvoicingCycleConfiguration | null;
895
- /**
896
- * User-specified key/value pairs for the resource. Individual keys can be removed
897
- * by setting the value to `null`, and the entire metadata mapping can be cleared
898
- * by setting `metadata` to `null`.
899
- */
900
- metadata?: Record<string, string | null> | null;
901
- }
902
- namespace NewPlanMatrixPrice {
903
- interface MatrixConfig {
904
- /**
905
- * Default per unit rate for any usage not bucketed into a specified matrix_value
906
- */
907
- default_unit_amount: string;
908
- /**
909
- * One or two event property values to evaluate matrix groups by
910
- */
911
- dimensions: Array<string | null>;
912
- /**
913
- * Matrix values for specified matrix grouping keys
914
- */
915
- matrix_values: Array<MatrixConfig.MatrixValue>;
916
- }
917
- namespace MatrixConfig {
918
- interface MatrixValue {
919
- /**
920
- * One or two matrix keys to filter usage to this Matrix value by. For example,
921
- * ["region", "tier"] could be used to filter cloud usage by a cloud region and an
922
- * instance tier.
923
- */
924
- dimension_values: Array<string | null>;
925
- /**
926
- * Unit price for the specified dimension_values
927
- */
928
- unit_amount: string;
929
- }
930
- }
931
- /**
932
- * For custom cadence: specifies the duration of the billing period in days or
933
- * months.
934
- */
935
- interface BillingCycleConfiguration {
936
- /**
937
- * The duration of the billing period.
938
- */
939
- duration: number;
940
- /**
941
- * The unit of billing period duration.
942
- */
943
- duration_unit: 'day' | 'month';
944
- }
945
- /**
946
- * For dimensional price: specifies a price group and dimension values
947
- */
948
- interface DimensionalPriceConfiguration {
949
- /**
950
- * The list of dimension values matching (in order) the dimensions of the price
951
- * group
952
- */
953
- dimension_values: Array<string>;
954
- /**
955
- * The id of the dimensional price group to include this price in
956
- */
957
- dimensional_price_group_id?: string | null;
958
- /**
959
- * The external id of the dimensional price group to include this price in
960
- */
961
- external_dimensional_price_group_id?: string | null;
962
- }
963
- /**
964
- * Within each billing cycle, specifies the cadence at which invoices are produced.
965
- * If unspecified, a single invoice is produced per billing cycle.
966
- */
967
- interface InvoicingCycleConfiguration {
968
- /**
969
- * The duration of the billing period.
970
- */
971
- duration: number;
972
- /**
973
- * The unit of billing period duration.
974
- */
975
- duration_unit: 'day' | 'month';
976
- }
977
- }
978
- interface NewPlanTieredPrice {
979
- /**
980
- * The cadence to bill for this price on.
981
- */
982
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
983
- /**
984
- * The id of the item the price will be associated with.
985
- */
986
- item_id: string;
987
- model_type: 'tiered';
988
- /**
989
- * The name of the price.
990
- */
991
- name: string;
992
- tiered_config: NewPlanTieredPrice.TieredConfig;
993
- /**
994
- * The id of the billable metric for the price. Only needed if the price is
995
- * usage-based.
996
- */
997
- billable_metric_id?: string | null;
998
- /**
999
- * If the Price represents a fixed cost, the price will be billed in-advance if
1000
- * this is true, and in-arrears if this is false.
1001
- */
1002
- billed_in_advance?: boolean | null;
1003
- /**
1004
- * For custom cadence: specifies the duration of the billing period in days or
1005
- * months.
1006
- */
1007
- billing_cycle_configuration?: NewPlanTieredPrice.BillingCycleConfiguration | null;
1008
- /**
1009
- * The per unit conversion rate of the price currency to the invoicing currency.
1010
- */
1011
- conversion_rate?: number | null;
1012
- /**
1013
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
1014
- * price is billed.
1015
- */
1016
- currency?: string | null;
1017
- /**
1018
- * For dimensional price: specifies a price group and dimension values
1019
- */
1020
- dimensional_price_configuration?: NewPlanTieredPrice.DimensionalPriceConfiguration | null;
1021
- /**
1022
- * An alias for the price.
1023
- */
1024
- external_price_id?: string | null;
1025
- /**
1026
- * If the Price represents a fixed cost, this represents the quantity of units
1027
- * applied.
1028
- */
1029
- fixed_price_quantity?: number | null;
1030
- /**
1031
- * The property used to group this price on an invoice
1032
- */
1033
- invoice_grouping_key?: string | null;
1034
- /**
1035
- * Within each billing cycle, specifies the cadence at which invoices are produced.
1036
- * If unspecified, a single invoice is produced per billing cycle.
1037
- */
1038
- invoicing_cycle_configuration?: NewPlanTieredPrice.InvoicingCycleConfiguration | null;
1039
- /**
1040
- * User-specified key/value pairs for the resource. Individual keys can be removed
1041
- * by setting the value to `null`, and the entire metadata mapping can be cleared
1042
- * by setting `metadata` to `null`.
1043
- */
1044
- metadata?: Record<string, string | null> | null;
1045
- }
1046
- namespace NewPlanTieredPrice {
1047
- interface TieredConfig {
1048
- /**
1049
- * Tiers for rating based on total usage quantities into the specified tier
1050
- */
1051
- tiers: Array<TieredConfig.Tier>;
1052
- }
1053
- namespace TieredConfig {
1054
- interface Tier {
1055
- /**
1056
- * Exclusive tier starting value
1057
- */
1058
- first_unit: number;
1059
- /**
1060
- * Amount per unit
1061
- */
1062
- unit_amount: string;
1063
- /**
1064
- * Inclusive tier ending value. If null, this is treated as the last tier
1065
- */
1066
- last_unit?: number | null;
1067
- }
1068
- }
1069
- /**
1070
- * For custom cadence: specifies the duration of the billing period in days or
1071
- * months.
1072
- */
1073
- interface BillingCycleConfiguration {
1074
- /**
1075
- * The duration of the billing period.
1076
- */
1077
- duration: number;
1078
- /**
1079
- * The unit of billing period duration.
1080
- */
1081
- duration_unit: 'day' | 'month';
1082
- }
1083
- /**
1084
- * For dimensional price: specifies a price group and dimension values
1085
- */
1086
- interface DimensionalPriceConfiguration {
1087
- /**
1088
- * The list of dimension values matching (in order) the dimensions of the price
1089
- * group
1090
- */
1091
- dimension_values: Array<string>;
1092
- /**
1093
- * The id of the dimensional price group to include this price in
1094
- */
1095
- dimensional_price_group_id?: string | null;
1096
- /**
1097
- * The external id of the dimensional price group to include this price in
1098
- */
1099
- external_dimensional_price_group_id?: string | null;
1100
- }
1101
- /**
1102
- * Within each billing cycle, specifies the cadence at which invoices are produced.
1103
- * If unspecified, a single invoice is produced per billing cycle.
1104
- */
1105
- interface InvoicingCycleConfiguration {
1106
- /**
1107
- * The duration of the billing period.
1108
- */
1109
- duration: number;
1110
- /**
1111
- * The unit of billing period duration.
1112
- */
1113
- duration_unit: 'day' | 'month';
1114
- }
1115
- }
1116
- interface NewPlanTieredBpsPrice {
1117
- /**
1118
- * The cadence to bill for this price on.
1119
- */
1120
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
1121
- /**
1122
- * The id of the item the price will be associated with.
1123
- */
1124
- item_id: string;
1125
- model_type: 'tiered_bps';
1126
- /**
1127
- * The name of the price.
1128
- */
1129
- name: string;
1130
- tiered_bps_config: NewPlanTieredBpsPrice.TieredBpsConfig;
1131
- /**
1132
- * The id of the billable metric for the price. Only needed if the price is
1133
- * usage-based.
1134
- */
1135
- billable_metric_id?: string | null;
1136
- /**
1137
- * If the Price represents a fixed cost, the price will be billed in-advance if
1138
- * this is true, and in-arrears if this is false.
1139
- */
1140
- billed_in_advance?: boolean | null;
1141
- /**
1142
- * For custom cadence: specifies the duration of the billing period in days or
1143
- * months.
1144
- */
1145
- billing_cycle_configuration?: NewPlanTieredBpsPrice.BillingCycleConfiguration | null;
1146
- /**
1147
- * The per unit conversion rate of the price currency to the invoicing currency.
1148
- */
1149
- conversion_rate?: number | null;
1150
- /**
1151
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
1152
- * price is billed.
1153
- */
1154
- currency?: string | null;
1155
- /**
1156
- * For dimensional price: specifies a price group and dimension values
1157
- */
1158
- dimensional_price_configuration?: NewPlanTieredBpsPrice.DimensionalPriceConfiguration | null;
1159
- /**
1160
- * An alias for the price.
1161
- */
1162
- external_price_id?: string | null;
1163
- /**
1164
- * If the Price represents a fixed cost, this represents the quantity of units
1165
- * applied.
1166
- */
1167
- fixed_price_quantity?: number | null;
1168
- /**
1169
- * The property used to group this price on an invoice
1170
- */
1171
- invoice_grouping_key?: string | null;
1172
- /**
1173
- * Within each billing cycle, specifies the cadence at which invoices are produced.
1174
- * If unspecified, a single invoice is produced per billing cycle.
1175
- */
1176
- invoicing_cycle_configuration?: NewPlanTieredBpsPrice.InvoicingCycleConfiguration | null;
1177
- /**
1178
- * User-specified key/value pairs for the resource. Individual keys can be removed
1179
- * by setting the value to `null`, and the entire metadata mapping can be cleared
1180
- * by setting `metadata` to `null`.
1181
- */
1182
- metadata?: Record<string, string | null> | null;
1183
- }
1184
- namespace NewPlanTieredBpsPrice {
1185
- interface TieredBpsConfig {
1186
- /**
1187
- * Tiers for a Graduated BPS pricing model, where usage is bucketed into specified
1188
- * tiers
1189
- */
1190
- tiers: Array<TieredBpsConfig.Tier>;
1191
- }
1192
- namespace TieredBpsConfig {
1193
- interface Tier {
1194
- /**
1195
- * Per-event basis point rate
1196
- */
1197
- bps: number;
1198
- /**
1199
- * Exclusive tier starting value
1200
- */
1201
- minimum_amount: string;
1202
- /**
1203
- * Inclusive tier ending value
1204
- */
1205
- maximum_amount?: string | null;
1206
- /**
1207
- * Per unit maximum to charge
1208
- */
1209
- per_unit_maximum?: string | null;
1210
- }
1211
- }
1212
- /**
1213
- * For custom cadence: specifies the duration of the billing period in days or
1214
- * months.
1215
- */
1216
- interface BillingCycleConfiguration {
1217
- /**
1218
- * The duration of the billing period.
1219
- */
1220
- duration: number;
1221
- /**
1222
- * The unit of billing period duration.
1223
- */
1224
- duration_unit: 'day' | 'month';
1225
- }
1226
- /**
1227
- * For dimensional price: specifies a price group and dimension values
1228
- */
1229
- interface DimensionalPriceConfiguration {
1230
- /**
1231
- * The list of dimension values matching (in order) the dimensions of the price
1232
- * group
1233
- */
1234
- dimension_values: Array<string>;
1235
- /**
1236
- * The id of the dimensional price group to include this price in
1237
- */
1238
- dimensional_price_group_id?: string | null;
1239
- /**
1240
- * The external id of the dimensional price group to include this price in
1241
- */
1242
- external_dimensional_price_group_id?: string | null;
1243
- }
1244
- /**
1245
- * Within each billing cycle, specifies the cadence at which invoices are produced.
1246
- * If unspecified, a single invoice is produced per billing cycle.
1247
- */
1248
- interface InvoicingCycleConfiguration {
1249
- /**
1250
- * The duration of the billing period.
1251
- */
1252
- duration: number;
1253
- /**
1254
- * The unit of billing period duration.
1255
- */
1256
- duration_unit: 'day' | 'month';
1257
- }
1258
- }
1259
- interface NewPlanBpsPrice {
1260
- bps_config: NewPlanBpsPrice.BpsConfig;
1261
- /**
1262
- * The cadence to bill for this price on.
1263
- */
1264
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
1265
- /**
1266
- * The id of the item the price will be associated with.
1267
- */
1268
- item_id: string;
1269
- model_type: 'bps';
1270
- /**
1271
- * The name of the price.
1272
- */
1273
- name: string;
1274
- /**
1275
- * The id of the billable metric for the price. Only needed if the price is
1276
- * usage-based.
1277
- */
1278
- billable_metric_id?: string | null;
1279
- /**
1280
- * If the Price represents a fixed cost, the price will be billed in-advance if
1281
- * this is true, and in-arrears if this is false.
1282
- */
1283
- billed_in_advance?: boolean | null;
1284
- /**
1285
- * For custom cadence: specifies the duration of the billing period in days or
1286
- * months.
1287
- */
1288
- billing_cycle_configuration?: NewPlanBpsPrice.BillingCycleConfiguration | null;
1289
- /**
1290
- * The per unit conversion rate of the price currency to the invoicing currency.
1291
- */
1292
- conversion_rate?: number | null;
1293
- /**
1294
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
1295
- * price is billed.
1296
- */
1297
- currency?: string | null;
1298
- /**
1299
- * For dimensional price: specifies a price group and dimension values
1300
- */
1301
- dimensional_price_configuration?: NewPlanBpsPrice.DimensionalPriceConfiguration | null;
1302
- /**
1303
- * An alias for the price.
1304
- */
1305
- external_price_id?: string | null;
1306
- /**
1307
- * If the Price represents a fixed cost, this represents the quantity of units
1308
- * applied.
1309
- */
1310
- fixed_price_quantity?: number | null;
1311
- /**
1312
- * The property used to group this price on an invoice
1313
- */
1314
- invoice_grouping_key?: string | null;
1315
- /**
1316
- * Within each billing cycle, specifies the cadence at which invoices are produced.
1317
- * If unspecified, a single invoice is produced per billing cycle.
1318
- */
1319
- invoicing_cycle_configuration?: NewPlanBpsPrice.InvoicingCycleConfiguration | null;
1320
- /**
1321
- * User-specified key/value pairs for the resource. Individual keys can be removed
1322
- * by setting the value to `null`, and the entire metadata mapping can be cleared
1323
- * by setting `metadata` to `null`.
1324
- */
1325
- metadata?: Record<string, string | null> | null;
1326
- }
1327
- namespace NewPlanBpsPrice {
1328
- interface BpsConfig {
1329
- /**
1330
- * Basis point take rate per event
1331
- */
1332
- bps: number;
1333
- /**
1334
- * Optional currency amount maximum to cap spend per event
1335
- */
1336
- per_unit_maximum?: string | null;
1337
- }
1338
- /**
1339
- * For custom cadence: specifies the duration of the billing period in days or
1340
- * months.
1341
- */
1342
- interface BillingCycleConfiguration {
1343
- /**
1344
- * The duration of the billing period.
1345
- */
1346
- duration: number;
1347
- /**
1348
- * The unit of billing period duration.
1349
- */
1350
- duration_unit: 'day' | 'month';
1351
- }
1352
- /**
1353
- * For dimensional price: specifies a price group and dimension values
1354
- */
1355
- interface DimensionalPriceConfiguration {
1356
- /**
1357
- * The list of dimension values matching (in order) the dimensions of the price
1358
- * group
1359
- */
1360
- dimension_values: Array<string>;
1361
- /**
1362
- * The id of the dimensional price group to include this price in
1363
- */
1364
- dimensional_price_group_id?: string | null;
1365
- /**
1366
- * The external id of the dimensional price group to include this price in
1367
- */
1368
- external_dimensional_price_group_id?: string | null;
1369
- }
1370
- /**
1371
- * Within each billing cycle, specifies the cadence at which invoices are produced.
1372
- * If unspecified, a single invoice is produced per billing cycle.
1373
- */
1374
- interface InvoicingCycleConfiguration {
1375
- /**
1376
- * The duration of the billing period.
1377
- */
1378
- duration: number;
1379
- /**
1380
- * The unit of billing period duration.
1381
- */
1382
- duration_unit: 'day' | 'month';
1383
- }
1384
- }
1385
- interface NewPlanBulkBpsPrice {
1386
- bulk_bps_config: NewPlanBulkBpsPrice.BulkBpsConfig;
1387
- /**
1388
- * The cadence to bill for this price on.
1389
- */
1390
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
1391
- /**
1392
- * The id of the item the price will be associated with.
1393
- */
1394
- item_id: string;
1395
- model_type: 'bulk_bps';
1396
- /**
1397
- * The name of the price.
1398
- */
1399
- name: string;
1400
- /**
1401
- * The id of the billable metric for the price. Only needed if the price is
1402
- * usage-based.
1403
- */
1404
- billable_metric_id?: string | null;
1405
- /**
1406
- * If the Price represents a fixed cost, the price will be billed in-advance if
1407
- * this is true, and in-arrears if this is false.
1408
- */
1409
- billed_in_advance?: boolean | null;
1410
- /**
1411
- * For custom cadence: specifies the duration of the billing period in days or
1412
- * months.
1413
- */
1414
- billing_cycle_configuration?: NewPlanBulkBpsPrice.BillingCycleConfiguration | null;
1415
- /**
1416
- * The per unit conversion rate of the price currency to the invoicing currency.
1417
- */
1418
- conversion_rate?: number | null;
1419
- /**
1420
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
1421
- * price is billed.
1422
- */
1423
- currency?: string | null;
1424
- /**
1425
- * For dimensional price: specifies a price group and dimension values
1426
- */
1427
- dimensional_price_configuration?: NewPlanBulkBpsPrice.DimensionalPriceConfiguration | null;
1428
- /**
1429
- * An alias for the price.
1430
- */
1431
- external_price_id?: string | null;
1432
- /**
1433
- * If the Price represents a fixed cost, this represents the quantity of units
1434
- * applied.
1435
- */
1436
- fixed_price_quantity?: number | null;
1437
- /**
1438
- * The property used to group this price on an invoice
1439
- */
1440
- invoice_grouping_key?: string | null;
1441
- /**
1442
- * Within each billing cycle, specifies the cadence at which invoices are produced.
1443
- * If unspecified, a single invoice is produced per billing cycle.
1444
- */
1445
- invoicing_cycle_configuration?: NewPlanBulkBpsPrice.InvoicingCycleConfiguration | null;
1446
- /**
1447
- * User-specified key/value pairs for the resource. Individual keys can be removed
1448
- * by setting the value to `null`, and the entire metadata mapping can be cleared
1449
- * by setting `metadata` to `null`.
1450
- */
1451
- metadata?: Record<string, string | null> | null;
1452
- }
1453
- namespace NewPlanBulkBpsPrice {
1454
- interface BulkBpsConfig {
1455
- /**
1456
- * Tiers for a bulk BPS pricing model where all usage is aggregated to a single
1457
- * tier based on total volume
1458
- */
1459
- tiers: Array<BulkBpsConfig.Tier>;
1460
- }
1461
- namespace BulkBpsConfig {
1462
- interface Tier {
1463
- /**
1464
- * Basis points to rate on
1465
- */
1466
- bps: number;
1467
- /**
1468
- * Upper bound for tier
1469
- */
1470
- maximum_amount?: string | null;
1471
- /**
1472
- * The maximum amount to charge for any one event
1473
- */
1474
- per_unit_maximum?: string | null;
1475
- }
1476
- }
1477
- /**
1478
- * For custom cadence: specifies the duration of the billing period in days or
1479
- * months.
1480
- */
1481
- interface BillingCycleConfiguration {
1482
- /**
1483
- * The duration of the billing period.
1484
- */
1485
- duration: number;
1486
- /**
1487
- * The unit of billing period duration.
1488
- */
1489
- duration_unit: 'day' | 'month';
1490
- }
1491
- /**
1492
- * For dimensional price: specifies a price group and dimension values
1493
- */
1494
- interface DimensionalPriceConfiguration {
1495
- /**
1496
- * The list of dimension values matching (in order) the dimensions of the price
1497
- * group
1498
- */
1499
- dimension_values: Array<string>;
1500
- /**
1501
- * The id of the dimensional price group to include this price in
1502
- */
1503
- dimensional_price_group_id?: string | null;
1504
- /**
1505
- * The external id of the dimensional price group to include this price in
1506
- */
1507
- external_dimensional_price_group_id?: string | null;
1508
- }
1509
- /**
1510
- * Within each billing cycle, specifies the cadence at which invoices are produced.
1511
- * If unspecified, a single invoice is produced per billing cycle.
1512
- */
1513
- interface InvoicingCycleConfiguration {
1514
- /**
1515
- * The duration of the billing period.
1516
- */
1517
- duration: number;
1518
- /**
1519
- * The unit of billing period duration.
1520
- */
1521
- duration_unit: 'day' | 'month';
1522
- }
1523
- }
1524
- interface NewPlanBulkPrice {
1525
- bulk_config: NewPlanBulkPrice.BulkConfig;
1526
- /**
1527
- * The cadence to bill for this price on.
1528
- */
1529
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
1530
- /**
1531
- * The id of the item the price will be associated with.
1532
- */
1533
- item_id: string;
1534
- model_type: 'bulk';
1535
- /**
1536
- * The name of the price.
1537
- */
1538
- name: string;
1539
- /**
1540
- * The id of the billable metric for the price. Only needed if the price is
1541
- * usage-based.
1542
- */
1543
- billable_metric_id?: string | null;
1544
- /**
1545
- * If the Price represents a fixed cost, the price will be billed in-advance if
1546
- * this is true, and in-arrears if this is false.
1547
- */
1548
- billed_in_advance?: boolean | null;
1549
- /**
1550
- * For custom cadence: specifies the duration of the billing period in days or
1551
- * months.
1552
- */
1553
- billing_cycle_configuration?: NewPlanBulkPrice.BillingCycleConfiguration | null;
1554
- /**
1555
- * The per unit conversion rate of the price currency to the invoicing currency.
1556
- */
1557
- conversion_rate?: number | null;
1558
- /**
1559
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
1560
- * price is billed.
1561
- */
1562
- currency?: string | null;
1563
- /**
1564
- * For dimensional price: specifies a price group and dimension values
1565
- */
1566
- dimensional_price_configuration?: NewPlanBulkPrice.DimensionalPriceConfiguration | null;
1567
- /**
1568
- * An alias for the price.
1569
- */
1570
- external_price_id?: string | null;
1571
- /**
1572
- * If the Price represents a fixed cost, this represents the quantity of units
1573
- * applied.
1574
- */
1575
- fixed_price_quantity?: number | null;
1576
- /**
1577
- * The property used to group this price on an invoice
1578
- */
1579
- invoice_grouping_key?: string | null;
1580
- /**
1581
- * Within each billing cycle, specifies the cadence at which invoices are produced.
1582
- * If unspecified, a single invoice is produced per billing cycle.
1583
- */
1584
- invoicing_cycle_configuration?: NewPlanBulkPrice.InvoicingCycleConfiguration | null;
1585
- /**
1586
- * User-specified key/value pairs for the resource. Individual keys can be removed
1587
- * by setting the value to `null`, and the entire metadata mapping can be cleared
1588
- * by setting `metadata` to `null`.
1589
- */
1590
- metadata?: Record<string, string | null> | null;
1591
- }
1592
- namespace NewPlanBulkPrice {
1593
- interface BulkConfig {
1594
- /**
1595
- * Bulk tiers for rating based on total usage volume
1596
- */
1597
- tiers: Array<BulkConfig.Tier>;
1598
- }
1599
- namespace BulkConfig {
1600
- interface Tier {
1601
- /**
1602
- * Amount per unit
1603
- */
1604
- unit_amount: string;
1605
- /**
1606
- * Upper bound for this tier
1607
- */
1608
- maximum_units?: number | null;
1609
- }
1610
- }
1611
- /**
1612
- * For custom cadence: specifies the duration of the billing period in days or
1613
- * months.
1614
- */
1615
- interface BillingCycleConfiguration {
1616
- /**
1617
- * The duration of the billing period.
1618
- */
1619
- duration: number;
1620
- /**
1621
- * The unit of billing period duration.
1622
- */
1623
- duration_unit: 'day' | 'month';
1624
- }
1625
- /**
1626
- * For dimensional price: specifies a price group and dimension values
1627
- */
1628
- interface DimensionalPriceConfiguration {
1629
- /**
1630
- * The list of dimension values matching (in order) the dimensions of the price
1631
- * group
1632
- */
1633
- dimension_values: Array<string>;
1634
- /**
1635
- * The id of the dimensional price group to include this price in
1636
- */
1637
- dimensional_price_group_id?: string | null;
1638
- /**
1639
- * The external id of the dimensional price group to include this price in
1640
- */
1641
- external_dimensional_price_group_id?: string | null;
1642
- }
1643
- /**
1644
- * Within each billing cycle, specifies the cadence at which invoices are produced.
1645
- * If unspecified, a single invoice is produced per billing cycle.
1646
- */
1647
- interface InvoicingCycleConfiguration {
1648
- /**
1649
- * The duration of the billing period.
1650
- */
1651
- duration: number;
1652
- /**
1653
- * The unit of billing period duration.
1654
- */
1655
- duration_unit: 'day' | 'month';
1656
- }
1657
- }
1658
- interface NewPlanThresholdTotalAmountPrice {
1659
- /**
1660
- * The cadence to bill for this price on.
1661
- */
1662
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
1663
- /**
1664
- * The id of the item the price will be associated with.
1665
- */
1666
- item_id: string;
1667
- model_type: 'threshold_total_amount';
1668
- /**
1669
- * The name of the price.
1670
- */
1671
- name: string;
1672
- threshold_total_amount_config: Record<string, unknown>;
1673
- /**
1674
- * The id of the billable metric for the price. Only needed if the price is
1675
- * usage-based.
1676
- */
1677
- billable_metric_id?: string | null;
1678
- /**
1679
- * If the Price represents a fixed cost, the price will be billed in-advance if
1680
- * this is true, and in-arrears if this is false.
1681
- */
1682
- billed_in_advance?: boolean | null;
1683
- /**
1684
- * For custom cadence: specifies the duration of the billing period in days or
1685
- * months.
1686
- */
1687
- billing_cycle_configuration?: NewPlanThresholdTotalAmountPrice.BillingCycleConfiguration | null;
1688
- /**
1689
- * The per unit conversion rate of the price currency to the invoicing currency.
1690
- */
1691
- conversion_rate?: number | null;
1692
- /**
1693
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
1694
- * price is billed.
1695
- */
1696
- currency?: string | null;
1697
- /**
1698
- * For dimensional price: specifies a price group and dimension values
1699
- */
1700
- dimensional_price_configuration?: NewPlanThresholdTotalAmountPrice.DimensionalPriceConfiguration | null;
1701
- /**
1702
- * An alias for the price.
1703
- */
1704
- external_price_id?: string | null;
1705
- /**
1706
- * If the Price represents a fixed cost, this represents the quantity of units
1707
- * applied.
1708
- */
1709
- fixed_price_quantity?: number | null;
1710
- /**
1711
- * The property used to group this price on an invoice
1712
- */
1713
- invoice_grouping_key?: string | null;
1714
- /**
1715
- * Within each billing cycle, specifies the cadence at which invoices are produced.
1716
- * If unspecified, a single invoice is produced per billing cycle.
1717
- */
1718
- invoicing_cycle_configuration?: NewPlanThresholdTotalAmountPrice.InvoicingCycleConfiguration | null;
1719
- /**
1720
- * User-specified key/value pairs for the resource. Individual keys can be removed
1721
- * by setting the value to `null`, and the entire metadata mapping can be cleared
1722
- * by setting `metadata` to `null`.
1723
- */
1724
- metadata?: Record<string, string | null> | null;
1725
- }
1726
- namespace NewPlanThresholdTotalAmountPrice {
1727
- /**
1728
- * For custom cadence: specifies the duration of the billing period in days or
1729
- * months.
1730
- */
1731
- interface BillingCycleConfiguration {
1732
- /**
1733
- * The duration of the billing period.
1734
- */
1735
- duration: number;
1736
- /**
1737
- * The unit of billing period duration.
1738
- */
1739
- duration_unit: 'day' | 'month';
1740
- }
1741
- /**
1742
- * For dimensional price: specifies a price group and dimension values
1743
- */
1744
- interface DimensionalPriceConfiguration {
1745
- /**
1746
- * The list of dimension values matching (in order) the dimensions of the price
1747
- * group
1748
- */
1749
- dimension_values: Array<string>;
1750
- /**
1751
- * The id of the dimensional price group to include this price in
1752
- */
1753
- dimensional_price_group_id?: string | null;
1754
- /**
1755
- * The external id of the dimensional price group to include this price in
1756
- */
1757
- external_dimensional_price_group_id?: string | null;
1758
- }
1759
- /**
1760
- * Within each billing cycle, specifies the cadence at which invoices are produced.
1761
- * If unspecified, a single invoice is produced per billing cycle.
1762
- */
1763
- interface InvoicingCycleConfiguration {
1764
- /**
1765
- * The duration of the billing period.
1766
- */
1767
- duration: number;
1768
- /**
1769
- * The unit of billing period duration.
1770
- */
1771
- duration_unit: 'day' | 'month';
1772
- }
1773
- }
1774
- interface NewPlanTieredPackagePrice {
1775
- /**
1776
- * The cadence to bill for this price on.
1777
- */
1778
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
1779
- /**
1780
- * The id of the item the price will be associated with.
1781
- */
1782
- item_id: string;
1783
- model_type: 'tiered_package';
1784
- /**
1785
- * The name of the price.
1786
- */
1787
- name: string;
1788
- tiered_package_config: Record<string, unknown>;
1789
- /**
1790
- * The id of the billable metric for the price. Only needed if the price is
1791
- * usage-based.
1792
- */
1793
- billable_metric_id?: string | null;
1794
- /**
1795
- * If the Price represents a fixed cost, the price will be billed in-advance if
1796
- * this is true, and in-arrears if this is false.
1797
- */
1798
- billed_in_advance?: boolean | null;
1799
- /**
1800
- * For custom cadence: specifies the duration of the billing period in days or
1801
- * months.
1802
- */
1803
- billing_cycle_configuration?: NewPlanTieredPackagePrice.BillingCycleConfiguration | null;
1804
- /**
1805
- * The per unit conversion rate of the price currency to the invoicing currency.
1806
- */
1807
- conversion_rate?: number | null;
1808
- /**
1809
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
1810
- * price is billed.
1811
- */
1812
- currency?: string | null;
1813
- /**
1814
- * For dimensional price: specifies a price group and dimension values
1815
- */
1816
- dimensional_price_configuration?: NewPlanTieredPackagePrice.DimensionalPriceConfiguration | null;
1817
- /**
1818
- * An alias for the price.
1819
- */
1820
- external_price_id?: string | null;
1821
- /**
1822
- * If the Price represents a fixed cost, this represents the quantity of units
1823
- * applied.
1824
- */
1825
- fixed_price_quantity?: number | null;
1826
- /**
1827
- * The property used to group this price on an invoice
1828
- */
1829
- invoice_grouping_key?: string | null;
1830
- /**
1831
- * Within each billing cycle, specifies the cadence at which invoices are produced.
1832
- * If unspecified, a single invoice is produced per billing cycle.
1833
- */
1834
- invoicing_cycle_configuration?: NewPlanTieredPackagePrice.InvoicingCycleConfiguration | null;
1835
- /**
1836
- * User-specified key/value pairs for the resource. Individual keys can be removed
1837
- * by setting the value to `null`, and the entire metadata mapping can be cleared
1838
- * by setting `metadata` to `null`.
1839
- */
1840
- metadata?: Record<string, string | null> | null;
1841
- }
1842
- namespace NewPlanTieredPackagePrice {
1843
- /**
1844
- * For custom cadence: specifies the duration of the billing period in days or
1845
- * months.
1846
- */
1847
- interface BillingCycleConfiguration {
1848
- /**
1849
- * The duration of the billing period.
1850
- */
1851
- duration: number;
1852
- /**
1853
- * The unit of billing period duration.
1854
- */
1855
- duration_unit: 'day' | 'month';
1856
- }
1857
- /**
1858
- * For dimensional price: specifies a price group and dimension values
1859
- */
1860
- interface DimensionalPriceConfiguration {
1861
- /**
1862
- * The list of dimension values matching (in order) the dimensions of the price
1863
- * group
1864
- */
1865
- dimension_values: Array<string>;
1866
- /**
1867
- * The id of the dimensional price group to include this price in
1868
- */
1869
- dimensional_price_group_id?: string | null;
1870
- /**
1871
- * The external id of the dimensional price group to include this price in
1872
- */
1873
- external_dimensional_price_group_id?: string | null;
1874
- }
1875
- /**
1876
- * Within each billing cycle, specifies the cadence at which invoices are produced.
1877
- * If unspecified, a single invoice is produced per billing cycle.
1878
- */
1879
- interface InvoicingCycleConfiguration {
1880
- /**
1881
- * The duration of the billing period.
1882
- */
1883
- duration: number;
1884
- /**
1885
- * The unit of billing period duration.
1886
- */
1887
- duration_unit: 'day' | 'month';
1888
- }
1889
- }
1890
- interface NewPlanTieredWithMinimumPrice {
1891
- /**
1892
- * The cadence to bill for this price on.
1893
- */
1894
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
1895
- /**
1896
- * The id of the item the price will be associated with.
1897
- */
1898
- item_id: string;
1899
- model_type: 'tiered_with_minimum';
1900
- /**
1901
- * The name of the price.
1902
- */
1903
- name: string;
1904
- tiered_with_minimum_config: Record<string, unknown>;
1905
- /**
1906
- * The id of the billable metric for the price. Only needed if the price is
1907
- * usage-based.
1908
- */
1909
- billable_metric_id?: string | null;
1910
- /**
1911
- * If the Price represents a fixed cost, the price will be billed in-advance if
1912
- * this is true, and in-arrears if this is false.
1913
- */
1914
- billed_in_advance?: boolean | null;
1915
- /**
1916
- * For custom cadence: specifies the duration of the billing period in days or
1917
- * months.
1918
- */
1919
- billing_cycle_configuration?: NewPlanTieredWithMinimumPrice.BillingCycleConfiguration | null;
1920
- /**
1921
- * The per unit conversion rate of the price currency to the invoicing currency.
1922
- */
1923
- conversion_rate?: number | null;
1924
- /**
1925
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
1926
- * price is billed.
1927
- */
1928
- currency?: string | null;
1929
- /**
1930
- * For dimensional price: specifies a price group and dimension values
1931
- */
1932
- dimensional_price_configuration?: NewPlanTieredWithMinimumPrice.DimensionalPriceConfiguration | null;
1933
- /**
1934
- * An alias for the price.
1935
- */
1936
- external_price_id?: string | null;
1937
- /**
1938
- * If the Price represents a fixed cost, this represents the quantity of units
1939
- * applied.
1940
- */
1941
- fixed_price_quantity?: number | null;
1942
- /**
1943
- * The property used to group this price on an invoice
1944
- */
1945
- invoice_grouping_key?: string | null;
1946
- /**
1947
- * Within each billing cycle, specifies the cadence at which invoices are produced.
1948
- * If unspecified, a single invoice is produced per billing cycle.
1949
- */
1950
- invoicing_cycle_configuration?: NewPlanTieredWithMinimumPrice.InvoicingCycleConfiguration | null;
1951
- /**
1952
- * User-specified key/value pairs for the resource. Individual keys can be removed
1953
- * by setting the value to `null`, and the entire metadata mapping can be cleared
1954
- * by setting `metadata` to `null`.
1955
- */
1956
- metadata?: Record<string, string | null> | null;
1957
- }
1958
- namespace NewPlanTieredWithMinimumPrice {
1959
- /**
1960
- * For custom cadence: specifies the duration of the billing period in days or
1961
- * months.
1962
- */
1963
- interface BillingCycleConfiguration {
1964
- /**
1965
- * The duration of the billing period.
1966
- */
1967
- duration: number;
1968
- /**
1969
- * The unit of billing period duration.
1970
- */
1971
- duration_unit: 'day' | 'month';
1972
- }
1973
- /**
1974
- * For dimensional price: specifies a price group and dimension values
1975
- */
1976
- interface DimensionalPriceConfiguration {
1977
- /**
1978
- * The list of dimension values matching (in order) the dimensions of the price
1979
- * group
1980
- */
1981
- dimension_values: Array<string>;
1982
- /**
1983
- * The id of the dimensional price group to include this price in
1984
- */
1985
- dimensional_price_group_id?: string | null;
1986
- /**
1987
- * The external id of the dimensional price group to include this price in
1988
- */
1989
- external_dimensional_price_group_id?: string | null;
1990
- }
1991
- /**
1992
- * Within each billing cycle, specifies the cadence at which invoices are produced.
1993
- * If unspecified, a single invoice is produced per billing cycle.
1994
- */
1995
- interface InvoicingCycleConfiguration {
1996
- /**
1997
- * The duration of the billing period.
1998
- */
1999
- duration: number;
2000
- /**
2001
- * The unit of billing period duration.
2002
- */
2003
- duration_unit: 'day' | 'month';
2004
- }
2005
- }
2006
- interface NewPlanUnitWithPercentPrice {
2007
- /**
2008
- * The cadence to bill for this price on.
2009
- */
2010
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
2011
- /**
2012
- * The id of the item the price will be associated with.
2013
- */
2014
- item_id: string;
2015
- model_type: 'unit_with_percent';
2016
- /**
2017
- * The name of the price.
2018
- */
2019
- name: string;
2020
- unit_with_percent_config: Record<string, unknown>;
2021
- /**
2022
- * The id of the billable metric for the price. Only needed if the price is
2023
- * usage-based.
2024
- */
2025
- billable_metric_id?: string | null;
2026
- /**
2027
- * If the Price represents a fixed cost, the price will be billed in-advance if
2028
- * this is true, and in-arrears if this is false.
2029
- */
2030
- billed_in_advance?: boolean | null;
2031
- /**
2032
- * For custom cadence: specifies the duration of the billing period in days or
2033
- * months.
2034
- */
2035
- billing_cycle_configuration?: NewPlanUnitWithPercentPrice.BillingCycleConfiguration | null;
2036
- /**
2037
- * The per unit conversion rate of the price currency to the invoicing currency.
2038
- */
2039
- conversion_rate?: number | null;
2040
- /**
2041
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
2042
- * price is billed.
2043
- */
2044
- currency?: string | null;
2045
- /**
2046
- * For dimensional price: specifies a price group and dimension values
2047
- */
2048
- dimensional_price_configuration?: NewPlanUnitWithPercentPrice.DimensionalPriceConfiguration | null;
2049
- /**
2050
- * An alias for the price.
2051
- */
2052
- external_price_id?: string | null;
2053
- /**
2054
- * If the Price represents a fixed cost, this represents the quantity of units
2055
- * applied.
2056
- */
2057
- fixed_price_quantity?: number | null;
2058
- /**
2059
- * The property used to group this price on an invoice
2060
- */
2061
- invoice_grouping_key?: string | null;
2062
- /**
2063
- * Within each billing cycle, specifies the cadence at which invoices are produced.
2064
- * If unspecified, a single invoice is produced per billing cycle.
2065
- */
2066
- invoicing_cycle_configuration?: NewPlanUnitWithPercentPrice.InvoicingCycleConfiguration | null;
2067
- /**
2068
- * User-specified key/value pairs for the resource. Individual keys can be removed
2069
- * by setting the value to `null`, and the entire metadata mapping can be cleared
2070
- * by setting `metadata` to `null`.
2071
- */
2072
- metadata?: Record<string, string | null> | null;
2073
- }
2074
- namespace NewPlanUnitWithPercentPrice {
2075
- /**
2076
- * For custom cadence: specifies the duration of the billing period in days or
2077
- * months.
2078
- */
2079
- interface BillingCycleConfiguration {
2080
- /**
2081
- * The duration of the billing period.
2082
- */
2083
- duration: number;
2084
- /**
2085
- * The unit of billing period duration.
2086
- */
2087
- duration_unit: 'day' | 'month';
2088
- }
2089
- /**
2090
- * For dimensional price: specifies a price group and dimension values
2091
- */
2092
- interface DimensionalPriceConfiguration {
2093
- /**
2094
- * The list of dimension values matching (in order) the dimensions of the price
2095
- * group
2096
- */
2097
- dimension_values: Array<string>;
2098
- /**
2099
- * The id of the dimensional price group to include this price in
2100
- */
2101
- dimensional_price_group_id?: string | null;
2102
- /**
2103
- * The external id of the dimensional price group to include this price in
2104
- */
2105
- external_dimensional_price_group_id?: string | null;
2106
- }
2107
- /**
2108
- * Within each billing cycle, specifies the cadence at which invoices are produced.
2109
- * If unspecified, a single invoice is produced per billing cycle.
2110
- */
2111
- interface InvoicingCycleConfiguration {
2112
- /**
2113
- * The duration of the billing period.
2114
- */
2115
- duration: number;
2116
- /**
2117
- * The unit of billing period duration.
2118
- */
2119
- duration_unit: 'day' | 'month';
2120
- }
2121
- }
2122
- interface NewPlanPackageWithAllocationPrice {
2123
- /**
2124
- * The cadence to bill for this price on.
2125
- */
2126
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
2127
- /**
2128
- * The id of the item the price will be associated with.
2129
- */
2130
- item_id: string;
2131
- model_type: 'package_with_allocation';
2132
- /**
2133
- * The name of the price.
2134
- */
2135
- name: string;
2136
- package_with_allocation_config: Record<string, unknown>;
2137
- /**
2138
- * The id of the billable metric for the price. Only needed if the price is
2139
- * usage-based.
2140
- */
2141
- billable_metric_id?: string | null;
2142
- /**
2143
- * If the Price represents a fixed cost, the price will be billed in-advance if
2144
- * this is true, and in-arrears if this is false.
2145
- */
2146
- billed_in_advance?: boolean | null;
2147
- /**
2148
- * For custom cadence: specifies the duration of the billing period in days or
2149
- * months.
2150
- */
2151
- billing_cycle_configuration?: NewPlanPackageWithAllocationPrice.BillingCycleConfiguration | null;
2152
- /**
2153
- * The per unit conversion rate of the price currency to the invoicing currency.
2154
- */
2155
- conversion_rate?: number | null;
2156
- /**
2157
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
2158
- * price is billed.
2159
- */
2160
- currency?: string | null;
2161
- /**
2162
- * For dimensional price: specifies a price group and dimension values
2163
- */
2164
- dimensional_price_configuration?: NewPlanPackageWithAllocationPrice.DimensionalPriceConfiguration | null;
2165
- /**
2166
- * An alias for the price.
2167
- */
2168
- external_price_id?: string | null;
2169
- /**
2170
- * If the Price represents a fixed cost, this represents the quantity of units
2171
- * applied.
2172
- */
2173
- fixed_price_quantity?: number | null;
2174
- /**
2175
- * The property used to group this price on an invoice
2176
- */
2177
- invoice_grouping_key?: string | null;
2178
- /**
2179
- * Within each billing cycle, specifies the cadence at which invoices are produced.
2180
- * If unspecified, a single invoice is produced per billing cycle.
2181
- */
2182
- invoicing_cycle_configuration?: NewPlanPackageWithAllocationPrice.InvoicingCycleConfiguration | null;
2183
- /**
2184
- * User-specified key/value pairs for the resource. Individual keys can be removed
2185
- * by setting the value to `null`, and the entire metadata mapping can be cleared
2186
- * by setting `metadata` to `null`.
2187
- */
2188
- metadata?: Record<string, string | null> | null;
2189
- }
2190
- namespace NewPlanPackageWithAllocationPrice {
2191
- /**
2192
- * For custom cadence: specifies the duration of the billing period in days or
2193
- * months.
2194
- */
2195
- interface BillingCycleConfiguration {
2196
- /**
2197
- * The duration of the billing period.
2198
- */
2199
- duration: number;
2200
- /**
2201
- * The unit of billing period duration.
2202
- */
2203
- duration_unit: 'day' | 'month';
2204
- }
2205
- /**
2206
- * For dimensional price: specifies a price group and dimension values
2207
- */
2208
- interface DimensionalPriceConfiguration {
2209
- /**
2210
- * The list of dimension values matching (in order) the dimensions of the price
2211
- * group
2212
- */
2213
- dimension_values: Array<string>;
2214
- /**
2215
- * The id of the dimensional price group to include this price in
2216
- */
2217
- dimensional_price_group_id?: string | null;
2218
- /**
2219
- * The external id of the dimensional price group to include this price in
2220
- */
2221
- external_dimensional_price_group_id?: string | null;
2222
- }
2223
- /**
2224
- * Within each billing cycle, specifies the cadence at which invoices are produced.
2225
- * If unspecified, a single invoice is produced per billing cycle.
2226
- */
2227
- interface InvoicingCycleConfiguration {
2228
- /**
2229
- * The duration of the billing period.
2230
- */
2231
- duration: number;
2232
- /**
2233
- * The unit of billing period duration.
2234
- */
2235
- duration_unit: 'day' | 'month';
2236
- }
2237
- }
2238
- interface NewPlanTierWithProrationPrice {
2239
- /**
2240
- * The cadence to bill for this price on.
2241
- */
2242
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
2243
- /**
2244
- * The id of the item the price will be associated with.
2245
- */
2246
- item_id: string;
2247
- model_type: 'tiered_with_proration';
2248
- /**
2249
- * The name of the price.
2250
- */
2251
- name: string;
2252
- tiered_with_proration_config: Record<string, unknown>;
2253
- /**
2254
- * The id of the billable metric for the price. Only needed if the price is
2255
- * usage-based.
2256
- */
2257
- billable_metric_id?: string | null;
2258
- /**
2259
- * If the Price represents a fixed cost, the price will be billed in-advance if
2260
- * this is true, and in-arrears if this is false.
2261
- */
2262
- billed_in_advance?: boolean | null;
2263
- /**
2264
- * For custom cadence: specifies the duration of the billing period in days or
2265
- * months.
2266
- */
2267
- billing_cycle_configuration?: NewPlanTierWithProrationPrice.BillingCycleConfiguration | null;
2268
- /**
2269
- * The per unit conversion rate of the price currency to the invoicing currency.
2270
- */
2271
- conversion_rate?: number | null;
2272
- /**
2273
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
2274
- * price is billed.
2275
- */
2276
- currency?: string | null;
2277
- /**
2278
- * For dimensional price: specifies a price group and dimension values
2279
- */
2280
- dimensional_price_configuration?: NewPlanTierWithProrationPrice.DimensionalPriceConfiguration | null;
2281
- /**
2282
- * An alias for the price.
2283
- */
2284
- external_price_id?: string | null;
2285
- /**
2286
- * If the Price represents a fixed cost, this represents the quantity of units
2287
- * applied.
2288
- */
2289
- fixed_price_quantity?: number | null;
2290
- /**
2291
- * The property used to group this price on an invoice
2292
- */
2293
- invoice_grouping_key?: string | null;
2294
- /**
2295
- * Within each billing cycle, specifies the cadence at which invoices are produced.
2296
- * If unspecified, a single invoice is produced per billing cycle.
2297
- */
2298
- invoicing_cycle_configuration?: NewPlanTierWithProrationPrice.InvoicingCycleConfiguration | null;
2299
- /**
2300
- * User-specified key/value pairs for the resource. Individual keys can be removed
2301
- * by setting the value to `null`, and the entire metadata mapping can be cleared
2302
- * by setting `metadata` to `null`.
2303
- */
2304
- metadata?: Record<string, string | null> | null;
2305
- }
2306
- namespace NewPlanTierWithProrationPrice {
2307
- /**
2308
- * For custom cadence: specifies the duration of the billing period in days or
2309
- * months.
2310
- */
2311
- interface BillingCycleConfiguration {
2312
- /**
2313
- * The duration of the billing period.
2314
- */
2315
- duration: number;
2316
- /**
2317
- * The unit of billing period duration.
2318
- */
2319
- duration_unit: 'day' | 'month';
2320
- }
2321
- /**
2322
- * For dimensional price: specifies a price group and dimension values
2323
- */
2324
- interface DimensionalPriceConfiguration {
2325
- /**
2326
- * The list of dimension values matching (in order) the dimensions of the price
2327
- * group
2328
- */
2329
- dimension_values: Array<string>;
2330
- /**
2331
- * The id of the dimensional price group to include this price in
2332
- */
2333
- dimensional_price_group_id?: string | null;
2334
- /**
2335
- * The external id of the dimensional price group to include this price in
2336
- */
2337
- external_dimensional_price_group_id?: string | null;
2338
- }
2339
- /**
2340
- * Within each billing cycle, specifies the cadence at which invoices are produced.
2341
- * If unspecified, a single invoice is produced per billing cycle.
2342
- */
2343
- interface InvoicingCycleConfiguration {
2344
- /**
2345
- * The duration of the billing period.
2346
- */
2347
- duration: number;
2348
- /**
2349
- * The unit of billing period duration.
2350
- */
2351
- duration_unit: 'day' | 'month';
2352
- }
2353
- }
2354
- interface NewPlanUnitWithProrationPrice {
2355
- /**
2356
- * The cadence to bill for this price on.
2357
- */
2358
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
2359
- /**
2360
- * The id of the item the price will be associated with.
2361
- */
2362
- item_id: string;
2363
- model_type: 'unit_with_proration';
2364
- /**
2365
- * The name of the price.
2366
- */
2367
- name: string;
2368
- unit_with_proration_config: Record<string, unknown>;
2369
- /**
2370
- * The id of the billable metric for the price. Only needed if the price is
2371
- * usage-based.
2372
- */
2373
- billable_metric_id?: string | null;
2374
- /**
2375
- * If the Price represents a fixed cost, the price will be billed in-advance if
2376
- * this is true, and in-arrears if this is false.
2377
- */
2378
- billed_in_advance?: boolean | null;
2379
- /**
2380
- * For custom cadence: specifies the duration of the billing period in days or
2381
- * months.
2382
- */
2383
- billing_cycle_configuration?: NewPlanUnitWithProrationPrice.BillingCycleConfiguration | null;
2384
- /**
2385
- * The per unit conversion rate of the price currency to the invoicing currency.
2386
- */
2387
- conversion_rate?: number | null;
2388
- /**
2389
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
2390
- * price is billed.
2391
- */
2392
- currency?: string | null;
2393
- /**
2394
- * For dimensional price: specifies a price group and dimension values
2395
- */
2396
- dimensional_price_configuration?: NewPlanUnitWithProrationPrice.DimensionalPriceConfiguration | null;
2397
- /**
2398
- * An alias for the price.
2399
- */
2400
- external_price_id?: string | null;
2401
- /**
2402
- * If the Price represents a fixed cost, this represents the quantity of units
2403
- * applied.
2404
- */
2405
- fixed_price_quantity?: number | null;
2406
- /**
2407
- * The property used to group this price on an invoice
2408
- */
2409
- invoice_grouping_key?: string | null;
2410
- /**
2411
- * Within each billing cycle, specifies the cadence at which invoices are produced.
2412
- * If unspecified, a single invoice is produced per billing cycle.
2413
- */
2414
- invoicing_cycle_configuration?: NewPlanUnitWithProrationPrice.InvoicingCycleConfiguration | null;
2415
- /**
2416
- * User-specified key/value pairs for the resource. Individual keys can be removed
2417
- * by setting the value to `null`, and the entire metadata mapping can be cleared
2418
- * by setting `metadata` to `null`.
2419
- */
2420
- metadata?: Record<string, string | null> | null;
2421
- }
2422
- namespace NewPlanUnitWithProrationPrice {
2423
- /**
2424
- * For custom cadence: specifies the duration of the billing period in days or
2425
- * months.
2426
- */
2427
- interface BillingCycleConfiguration {
2428
- /**
2429
- * The duration of the billing period.
2430
- */
2431
- duration: number;
2432
- /**
2433
- * The unit of billing period duration.
2434
- */
2435
- duration_unit: 'day' | 'month';
2436
- }
2437
- /**
2438
- * For dimensional price: specifies a price group and dimension values
2439
- */
2440
- interface DimensionalPriceConfiguration {
2441
- /**
2442
- * The list of dimension values matching (in order) the dimensions of the price
2443
- * group
2444
- */
2445
- dimension_values: Array<string>;
2446
- /**
2447
- * The id of the dimensional price group to include this price in
2448
- */
2449
- dimensional_price_group_id?: string | null;
2450
- /**
2451
- * The external id of the dimensional price group to include this price in
2452
- */
2453
- external_dimensional_price_group_id?: string | null;
2454
- }
2455
- /**
2456
- * Within each billing cycle, specifies the cadence at which invoices are produced.
2457
- * If unspecified, a single invoice is produced per billing cycle.
2458
- */
2459
- interface InvoicingCycleConfiguration {
2460
- /**
2461
- * The duration of the billing period.
2462
- */
2463
- duration: number;
2464
- /**
2465
- * The unit of billing period duration.
2466
- */
2467
- duration_unit: 'day' | 'month';
2468
- }
2469
- }
2470
- interface NewPlanGroupedAllocationPrice {
2471
- /**
2472
- * The cadence to bill for this price on.
2473
- */
2474
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
2475
- grouped_allocation_config: Record<string, unknown>;
2476
- /**
2477
- * The id of the item the price will be associated with.
2478
- */
2479
- item_id: string;
2480
- model_type: 'grouped_allocation';
2481
- /**
2482
- * The name of the price.
2483
- */
2484
- name: string;
2485
- /**
2486
- * The id of the billable metric for the price. Only needed if the price is
2487
- * usage-based.
2488
- */
2489
- billable_metric_id?: string | null;
2490
- /**
2491
- * If the Price represents a fixed cost, the price will be billed in-advance if
2492
- * this is true, and in-arrears if this is false.
2493
- */
2494
- billed_in_advance?: boolean | null;
2495
- /**
2496
- * For custom cadence: specifies the duration of the billing period in days or
2497
- * months.
2498
- */
2499
- billing_cycle_configuration?: NewPlanGroupedAllocationPrice.BillingCycleConfiguration | null;
2500
- /**
2501
- * The per unit conversion rate of the price currency to the invoicing currency.
2502
- */
2503
- conversion_rate?: number | null;
2504
- /**
2505
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
2506
- * price is billed.
2507
- */
2508
- currency?: string | null;
2509
- /**
2510
- * For dimensional price: specifies a price group and dimension values
2511
- */
2512
- dimensional_price_configuration?: NewPlanGroupedAllocationPrice.DimensionalPriceConfiguration | null;
2513
- /**
2514
- * An alias for the price.
2515
- */
2516
- external_price_id?: string | null;
2517
- /**
2518
- * If the Price represents a fixed cost, this represents the quantity of units
2519
- * applied.
2520
- */
2521
- fixed_price_quantity?: number | null;
2522
- /**
2523
- * The property used to group this price on an invoice
2524
- */
2525
- invoice_grouping_key?: string | null;
2526
- /**
2527
- * Within each billing cycle, specifies the cadence at which invoices are produced.
2528
- * If unspecified, a single invoice is produced per billing cycle.
2529
- */
2530
- invoicing_cycle_configuration?: NewPlanGroupedAllocationPrice.InvoicingCycleConfiguration | null;
2531
- /**
2532
- * User-specified key/value pairs for the resource. Individual keys can be removed
2533
- * by setting the value to `null`, and the entire metadata mapping can be cleared
2534
- * by setting `metadata` to `null`.
2535
- */
2536
- metadata?: Record<string, string | null> | null;
2537
- }
2538
- namespace NewPlanGroupedAllocationPrice {
2539
- /**
2540
- * For custom cadence: specifies the duration of the billing period in days or
2541
- * months.
2542
- */
2543
- interface BillingCycleConfiguration {
2544
- /**
2545
- * The duration of the billing period.
2546
- */
2547
- duration: number;
2548
- /**
2549
- * The unit of billing period duration.
2550
- */
2551
- duration_unit: 'day' | 'month';
2552
- }
2553
- /**
2554
- * For dimensional price: specifies a price group and dimension values
2555
- */
2556
- interface DimensionalPriceConfiguration {
2557
- /**
2558
- * The list of dimension values matching (in order) the dimensions of the price
2559
- * group
2560
- */
2561
- dimension_values: Array<string>;
2562
- /**
2563
- * The id of the dimensional price group to include this price in
2564
- */
2565
- dimensional_price_group_id?: string | null;
2566
- /**
2567
- * The external id of the dimensional price group to include this price in
2568
- */
2569
- external_dimensional_price_group_id?: string | null;
2570
- }
2571
- /**
2572
- * Within each billing cycle, specifies the cadence at which invoices are produced.
2573
- * If unspecified, a single invoice is produced per billing cycle.
2574
- */
2575
- interface InvoicingCycleConfiguration {
2576
- /**
2577
- * The duration of the billing period.
2578
- */
2579
- duration: number;
2580
- /**
2581
- * The unit of billing period duration.
2582
- */
2583
- duration_unit: 'day' | 'month';
2584
- }
2585
- }
2586
- interface NewPlanGroupedWithProratedMinimumPrice {
2587
- /**
2588
- * The cadence to bill for this price on.
2589
- */
2590
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
2591
- grouped_with_prorated_minimum_config: Record<string, unknown>;
2592
- /**
2593
- * The id of the item the price will be associated with.
2594
- */
2595
- item_id: string;
2596
- model_type: 'grouped_with_prorated_minimum';
2597
- /**
2598
- * The name of the price.
2599
- */
2600
- name: string;
2601
- /**
2602
- * The id of the billable metric for the price. Only needed if the price is
2603
- * usage-based.
2604
- */
2605
- billable_metric_id?: string | null;
2606
- /**
2607
- * If the Price represents a fixed cost, the price will be billed in-advance if
2608
- * this is true, and in-arrears if this is false.
2609
- */
2610
- billed_in_advance?: boolean | null;
2611
- /**
2612
- * For custom cadence: specifies the duration of the billing period in days or
2613
- * months.
2614
- */
2615
- billing_cycle_configuration?: NewPlanGroupedWithProratedMinimumPrice.BillingCycleConfiguration | null;
2616
- /**
2617
- * The per unit conversion rate of the price currency to the invoicing currency.
2618
- */
2619
- conversion_rate?: number | null;
2620
- /**
2621
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
2622
- * price is billed.
2623
- */
2624
- currency?: string | null;
2625
- /**
2626
- * For dimensional price: specifies a price group and dimension values
2627
- */
2628
- dimensional_price_configuration?: NewPlanGroupedWithProratedMinimumPrice.DimensionalPriceConfiguration | null;
2629
- /**
2630
- * An alias for the price.
2631
- */
2632
- external_price_id?: string | null;
2633
- /**
2634
- * If the Price represents a fixed cost, this represents the quantity of units
2635
- * applied.
2636
- */
2637
- fixed_price_quantity?: number | null;
2638
- /**
2639
- * The property used to group this price on an invoice
2640
- */
2641
- invoice_grouping_key?: string | null;
2642
- /**
2643
- * Within each billing cycle, specifies the cadence at which invoices are produced.
2644
- * If unspecified, a single invoice is produced per billing cycle.
2645
- */
2646
- invoicing_cycle_configuration?: NewPlanGroupedWithProratedMinimumPrice.InvoicingCycleConfiguration | null;
2647
- /**
2648
- * User-specified key/value pairs for the resource. Individual keys can be removed
2649
- * by setting the value to `null`, and the entire metadata mapping can be cleared
2650
- * by setting `metadata` to `null`.
2651
- */
2652
- metadata?: Record<string, string | null> | null;
2653
- }
2654
- namespace NewPlanGroupedWithProratedMinimumPrice {
2655
- /**
2656
- * For custom cadence: specifies the duration of the billing period in days or
2657
- * months.
2658
- */
2659
- interface BillingCycleConfiguration {
2660
- /**
2661
- * The duration of the billing period.
2662
- */
2663
- duration: number;
2664
- /**
2665
- * The unit of billing period duration.
2666
- */
2667
- duration_unit: 'day' | 'month';
2668
- }
2669
- /**
2670
- * For dimensional price: specifies a price group and dimension values
2671
- */
2672
- interface DimensionalPriceConfiguration {
2673
- /**
2674
- * The list of dimension values matching (in order) the dimensions of the price
2675
- * group
2676
- */
2677
- dimension_values: Array<string>;
2678
- /**
2679
- * The id of the dimensional price group to include this price in
2680
- */
2681
- dimensional_price_group_id?: string | null;
2682
- /**
2683
- * The external id of the dimensional price group to include this price in
2684
- */
2685
- external_dimensional_price_group_id?: string | null;
2686
- }
2687
- /**
2688
- * Within each billing cycle, specifies the cadence at which invoices are produced.
2689
- * If unspecified, a single invoice is produced per billing cycle.
2690
- */
2691
- interface InvoicingCycleConfiguration {
2692
- /**
2693
- * The duration of the billing period.
2694
- */
2695
- duration: number;
2696
- /**
2697
- * The unit of billing period duration.
2698
- */
2699
- duration_unit: 'day' | 'month';
2700
- }
2701
- }
2702
- interface NewPlanGroupedWithMeteredMinimumPrice {
2703
- /**
2704
- * The cadence to bill for this price on.
2705
- */
2706
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
2707
- grouped_with_metered_minimum_config: Record<string, unknown>;
2708
- /**
2709
- * The id of the item the price will be associated with.
2710
- */
2711
- item_id: string;
2712
- model_type: 'grouped_with_metered_minimum';
2713
- /**
2714
- * The name of the price.
2715
- */
2716
- name: string;
2717
- /**
2718
- * The id of the billable metric for the price. Only needed if the price is
2719
- * usage-based.
2720
- */
2721
- billable_metric_id?: string | null;
2722
- /**
2723
- * If the Price represents a fixed cost, the price will be billed in-advance if
2724
- * this is true, and in-arrears if this is false.
2725
- */
2726
- billed_in_advance?: boolean | null;
2727
- /**
2728
- * For custom cadence: specifies the duration of the billing period in days or
2729
- * months.
2730
- */
2731
- billing_cycle_configuration?: NewPlanGroupedWithMeteredMinimumPrice.BillingCycleConfiguration | null;
2732
- /**
2733
- * The per unit conversion rate of the price currency to the invoicing currency.
2734
- */
2735
- conversion_rate?: number | null;
2736
- /**
2737
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
2738
- * price is billed.
2739
- */
2740
- currency?: string | null;
2741
- /**
2742
- * For dimensional price: specifies a price group and dimension values
2743
- */
2744
- dimensional_price_configuration?: NewPlanGroupedWithMeteredMinimumPrice.DimensionalPriceConfiguration | null;
2745
- /**
2746
- * An alias for the price.
2747
- */
2748
- external_price_id?: string | null;
2749
- /**
2750
- * If the Price represents a fixed cost, this represents the quantity of units
2751
- * applied.
2752
- */
2753
- fixed_price_quantity?: number | null;
2754
- /**
2755
- * The property used to group this price on an invoice
2756
- */
2757
- invoice_grouping_key?: string | null;
2758
- /**
2759
- * Within each billing cycle, specifies the cadence at which invoices are produced.
2760
- * If unspecified, a single invoice is produced per billing cycle.
2761
- */
2762
- invoicing_cycle_configuration?: NewPlanGroupedWithMeteredMinimumPrice.InvoicingCycleConfiguration | null;
2763
- /**
2764
- * User-specified key/value pairs for the resource. Individual keys can be removed
2765
- * by setting the value to `null`, and the entire metadata mapping can be cleared
2766
- * by setting `metadata` to `null`.
2767
- */
2768
- metadata?: Record<string, string | null> | null;
2769
- }
2770
- namespace NewPlanGroupedWithMeteredMinimumPrice {
2771
- /**
2772
- * For custom cadence: specifies the duration of the billing period in days or
2773
- * months.
2774
- */
2775
- interface BillingCycleConfiguration {
2776
- /**
2777
- * The duration of the billing period.
2778
- */
2779
- duration: number;
2780
- /**
2781
- * The unit of billing period duration.
2782
- */
2783
- duration_unit: 'day' | 'month';
2784
- }
2785
- /**
2786
- * For dimensional price: specifies a price group and dimension values
2787
- */
2788
- interface DimensionalPriceConfiguration {
2789
- /**
2790
- * The list of dimension values matching (in order) the dimensions of the price
2791
- * group
2792
- */
2793
- dimension_values: Array<string>;
2794
- /**
2795
- * The id of the dimensional price group to include this price in
2796
- */
2797
- dimensional_price_group_id?: string | null;
2798
- /**
2799
- * The external id of the dimensional price group to include this price in
2800
- */
2801
- external_dimensional_price_group_id?: string | null;
2802
- }
2803
- /**
2804
- * Within each billing cycle, specifies the cadence at which invoices are produced.
2805
- * If unspecified, a single invoice is produced per billing cycle.
2806
- */
2807
- interface InvoicingCycleConfiguration {
2808
- /**
2809
- * The duration of the billing period.
2810
- */
2811
- duration: number;
2812
- /**
2813
- * The unit of billing period duration.
2814
- */
2815
- duration_unit: 'day' | 'month';
2816
- }
2817
- }
2818
- interface NewPlanMatrixWithDisplayNamePrice {
2819
- /**
2820
- * The cadence to bill for this price on.
2821
- */
2822
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
2823
- /**
2824
- * The id of the item the price will be associated with.
2825
- */
2826
- item_id: string;
2827
- matrix_with_display_name_config: Record<string, unknown>;
2828
- model_type: 'matrix_with_display_name';
2829
- /**
2830
- * The name of the price.
2831
- */
2832
- name: string;
2833
- /**
2834
- * The id of the billable metric for the price. Only needed if the price is
2835
- * usage-based.
2836
- */
2837
- billable_metric_id?: string | null;
2838
- /**
2839
- * If the Price represents a fixed cost, the price will be billed in-advance if
2840
- * this is true, and in-arrears if this is false.
2841
- */
2842
- billed_in_advance?: boolean | null;
2843
- /**
2844
- * For custom cadence: specifies the duration of the billing period in days or
2845
- * months.
2846
- */
2847
- billing_cycle_configuration?: NewPlanMatrixWithDisplayNamePrice.BillingCycleConfiguration | null;
2848
- /**
2849
- * The per unit conversion rate of the price currency to the invoicing currency.
2850
- */
2851
- conversion_rate?: number | null;
2852
- /**
2853
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
2854
- * price is billed.
2855
- */
2856
- currency?: string | null;
2857
- /**
2858
- * For dimensional price: specifies a price group and dimension values
2859
- */
2860
- dimensional_price_configuration?: NewPlanMatrixWithDisplayNamePrice.DimensionalPriceConfiguration | null;
2861
- /**
2862
- * An alias for the price.
2863
- */
2864
- external_price_id?: string | null;
2865
- /**
2866
- * If the Price represents a fixed cost, this represents the quantity of units
2867
- * applied.
2868
- */
2869
- fixed_price_quantity?: number | null;
2870
- /**
2871
- * The property used to group this price on an invoice
2872
- */
2873
- invoice_grouping_key?: string | null;
2874
- /**
2875
- * Within each billing cycle, specifies the cadence at which invoices are produced.
2876
- * If unspecified, a single invoice is produced per billing cycle.
2877
- */
2878
- invoicing_cycle_configuration?: NewPlanMatrixWithDisplayNamePrice.InvoicingCycleConfiguration | null;
2879
- /**
2880
- * User-specified key/value pairs for the resource. Individual keys can be removed
2881
- * by setting the value to `null`, and the entire metadata mapping can be cleared
2882
- * by setting `metadata` to `null`.
2883
- */
2884
- metadata?: Record<string, string | null> | null;
2885
- }
2886
- namespace NewPlanMatrixWithDisplayNamePrice {
2887
- /**
2888
- * For custom cadence: specifies the duration of the billing period in days or
2889
- * months.
2890
- */
2891
- interface BillingCycleConfiguration {
2892
- /**
2893
- * The duration of the billing period.
2894
- */
2895
- duration: number;
2896
- /**
2897
- * The unit of billing period duration.
2898
- */
2899
- duration_unit: 'day' | 'month';
2900
- }
2901
- /**
2902
- * For dimensional price: specifies a price group and dimension values
2903
- */
2904
- interface DimensionalPriceConfiguration {
2905
- /**
2906
- * The list of dimension values matching (in order) the dimensions of the price
2907
- * group
2908
- */
2909
- dimension_values: Array<string>;
2910
- /**
2911
- * The id of the dimensional price group to include this price in
2912
- */
2913
- dimensional_price_group_id?: string | null;
2914
- /**
2915
- * The external id of the dimensional price group to include this price in
2916
- */
2917
- external_dimensional_price_group_id?: string | null;
2918
- }
2919
- /**
2920
- * Within each billing cycle, specifies the cadence at which invoices are produced.
2921
- * If unspecified, a single invoice is produced per billing cycle.
2922
- */
2923
- interface InvoicingCycleConfiguration {
2924
- /**
2925
- * The duration of the billing period.
2926
- */
2927
- duration: number;
2928
- /**
2929
- * The unit of billing period duration.
2930
- */
2931
- duration_unit: 'day' | 'month';
2932
- }
2933
- }
2934
- interface NewPlanBulkWithProrationPrice {
2935
- bulk_with_proration_config: Record<string, unknown>;
2936
- /**
2937
- * The cadence to bill for this price on.
2938
- */
2939
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
2940
- /**
2941
- * The id of the item the price will be associated with.
2942
- */
2943
- item_id: string;
2944
- model_type: 'bulk_with_proration';
2945
- /**
2946
- * The name of the price.
2947
- */
2948
- name: string;
2949
- /**
2950
- * The id of the billable metric for the price. Only needed if the price is
2951
- * usage-based.
2952
- */
2953
- billable_metric_id?: string | null;
2954
- /**
2955
- * If the Price represents a fixed cost, the price will be billed in-advance if
2956
- * this is true, and in-arrears if this is false.
2957
- */
2958
- billed_in_advance?: boolean | null;
2959
- /**
2960
- * For custom cadence: specifies the duration of the billing period in days or
2961
- * months.
2962
- */
2963
- billing_cycle_configuration?: NewPlanBulkWithProrationPrice.BillingCycleConfiguration | null;
2964
- /**
2965
- * The per unit conversion rate of the price currency to the invoicing currency.
2966
- */
2967
- conversion_rate?: number | null;
2968
- /**
2969
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
2970
- * price is billed.
2971
- */
2972
- currency?: string | null;
2973
- /**
2974
- * For dimensional price: specifies a price group and dimension values
2975
- */
2976
- dimensional_price_configuration?: NewPlanBulkWithProrationPrice.DimensionalPriceConfiguration | null;
2977
- /**
2978
- * An alias for the price.
2979
- */
2980
- external_price_id?: string | null;
2981
- /**
2982
- * If the Price represents a fixed cost, this represents the quantity of units
2983
- * applied.
2984
- */
2985
- fixed_price_quantity?: number | null;
2986
- /**
2987
- * The property used to group this price on an invoice
2988
- */
2989
- invoice_grouping_key?: string | null;
2990
- /**
2991
- * Within each billing cycle, specifies the cadence at which invoices are produced.
2992
- * If unspecified, a single invoice is produced per billing cycle.
2993
- */
2994
- invoicing_cycle_configuration?: NewPlanBulkWithProrationPrice.InvoicingCycleConfiguration | null;
2995
- /**
2996
- * User-specified key/value pairs for the resource. Individual keys can be removed
2997
- * by setting the value to `null`, and the entire metadata mapping can be cleared
2998
- * by setting `metadata` to `null`.
2999
- */
3000
- metadata?: Record<string, string | null> | null;
3001
- }
3002
- namespace NewPlanBulkWithProrationPrice {
3003
- /**
3004
- * For custom cadence: specifies the duration of the billing period in days or
3005
- * months.
3006
- */
3007
- interface BillingCycleConfiguration {
3008
- /**
3009
- * The duration of the billing period.
3010
- */
3011
- duration: number;
3012
- /**
3013
- * The unit of billing period duration.
3014
- */
3015
- duration_unit: 'day' | 'month';
3016
- }
3017
- /**
3018
- * For dimensional price: specifies a price group and dimension values
3019
- */
3020
- interface DimensionalPriceConfiguration {
3021
- /**
3022
- * The list of dimension values matching (in order) the dimensions of the price
3023
- * group
3024
- */
3025
- dimension_values: Array<string>;
3026
- /**
3027
- * The id of the dimensional price group to include this price in
3028
- */
3029
- dimensional_price_group_id?: string | null;
3030
- /**
3031
- * The external id of the dimensional price group to include this price in
3032
- */
3033
- external_dimensional_price_group_id?: string | null;
3034
- }
3035
- /**
3036
- * Within each billing cycle, specifies the cadence at which invoices are produced.
3037
- * If unspecified, a single invoice is produced per billing cycle.
3038
- */
3039
- interface InvoicingCycleConfiguration {
3040
- /**
3041
- * The duration of the billing period.
3042
- */
3043
- duration: number;
3044
- /**
3045
- * The unit of billing period duration.
3046
- */
3047
- duration_unit: 'day' | 'month';
3048
- }
3049
- }
3050
- interface NewPlanGroupedTieredPackagePrice {
3051
- /**
3052
- * The cadence to bill for this price on.
3053
- */
3054
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
3055
- grouped_tiered_package_config: Record<string, unknown>;
3056
- /**
3057
- * The id of the item the price will be associated with.
3058
- */
3059
- item_id: string;
3060
- model_type: 'grouped_tiered_package';
3061
- /**
3062
- * The name of the price.
3063
- */
3064
- name: string;
3065
- /**
3066
- * The id of the billable metric for the price. Only needed if the price is
3067
- * usage-based.
3068
- */
3069
- billable_metric_id?: string | null;
3070
- /**
3071
- * If the Price represents a fixed cost, the price will be billed in-advance if
3072
- * this is true, and in-arrears if this is false.
3073
- */
3074
- billed_in_advance?: boolean | null;
3075
- /**
3076
- * For custom cadence: specifies the duration of the billing period in days or
3077
- * months.
3078
- */
3079
- billing_cycle_configuration?: NewPlanGroupedTieredPackagePrice.BillingCycleConfiguration | null;
3080
- /**
3081
- * The per unit conversion rate of the price currency to the invoicing currency.
3082
- */
3083
- conversion_rate?: number | null;
3084
- /**
3085
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
3086
- * price is billed.
3087
- */
3088
- currency?: string | null;
3089
- /**
3090
- * For dimensional price: specifies a price group and dimension values
3091
- */
3092
- dimensional_price_configuration?: NewPlanGroupedTieredPackagePrice.DimensionalPriceConfiguration | null;
3093
- /**
3094
- * An alias for the price.
3095
- */
3096
- external_price_id?: string | null;
3097
- /**
3098
- * If the Price represents a fixed cost, this represents the quantity of units
3099
- * applied.
3100
- */
3101
- fixed_price_quantity?: number | null;
3102
- /**
3103
- * The property used to group this price on an invoice
3104
- */
3105
- invoice_grouping_key?: string | null;
3106
- /**
3107
- * Within each billing cycle, specifies the cadence at which invoices are produced.
3108
- * If unspecified, a single invoice is produced per billing cycle.
3109
- */
3110
- invoicing_cycle_configuration?: NewPlanGroupedTieredPackagePrice.InvoicingCycleConfiguration | null;
3111
- /**
3112
- * User-specified key/value pairs for the resource. Individual keys can be removed
3113
- * by setting the value to `null`, and the entire metadata mapping can be cleared
3114
- * by setting `metadata` to `null`.
3115
- */
3116
- metadata?: Record<string, string | null> | null;
3117
- }
3118
- namespace NewPlanGroupedTieredPackagePrice {
3119
- /**
3120
- * For custom cadence: specifies the duration of the billing period in days or
3121
- * months.
3122
- */
3123
- interface BillingCycleConfiguration {
3124
- /**
3125
- * The duration of the billing period.
3126
- */
3127
- duration: number;
3128
- /**
3129
- * The unit of billing period duration.
3130
- */
3131
- duration_unit: 'day' | 'month';
3132
- }
3133
- /**
3134
- * For dimensional price: specifies a price group and dimension values
3135
- */
3136
- interface DimensionalPriceConfiguration {
3137
- /**
3138
- * The list of dimension values matching (in order) the dimensions of the price
3139
- * group
3140
- */
3141
- dimension_values: Array<string>;
3142
- /**
3143
- * The id of the dimensional price group to include this price in
3144
- */
3145
- dimensional_price_group_id?: string | null;
3146
- /**
3147
- * The external id of the dimensional price group to include this price in
3148
- */
3149
- external_dimensional_price_group_id?: string | null;
3150
- }
3151
- /**
3152
- * Within each billing cycle, specifies the cadence at which invoices are produced.
3153
- * If unspecified, a single invoice is produced per billing cycle.
3154
- */
3155
- interface InvoicingCycleConfiguration {
3156
- /**
3157
- * The duration of the billing period.
3158
- */
3159
- duration: number;
3160
- /**
3161
- * The unit of billing period duration.
3162
- */
3163
- duration_unit: 'day' | 'month';
3164
- }
3165
- }
3166
- interface NewPlanMaxGroupTieredPackagePrice {
3167
- /**
3168
- * The cadence to bill for this price on.
3169
- */
3170
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
3171
- /**
3172
- * The id of the item the price will be associated with.
3173
- */
3174
- item_id: string;
3175
- max_group_tiered_package_config: Record<string, unknown>;
3176
- model_type: 'max_group_tiered_package';
3177
- /**
3178
- * The name of the price.
3179
- */
3180
- name: string;
3181
- /**
3182
- * The id of the billable metric for the price. Only needed if the price is
3183
- * usage-based.
3184
- */
3185
- billable_metric_id?: string | null;
3186
- /**
3187
- * If the Price represents a fixed cost, the price will be billed in-advance if
3188
- * this is true, and in-arrears if this is false.
3189
- */
3190
- billed_in_advance?: boolean | null;
3191
- /**
3192
- * For custom cadence: specifies the duration of the billing period in days or
3193
- * months.
3194
- */
3195
- billing_cycle_configuration?: NewPlanMaxGroupTieredPackagePrice.BillingCycleConfiguration | null;
3196
- /**
3197
- * The per unit conversion rate of the price currency to the invoicing currency.
3198
- */
3199
- conversion_rate?: number | null;
3200
- /**
3201
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
3202
- * price is billed.
3203
- */
3204
- currency?: string | null;
3205
- /**
3206
- * For dimensional price: specifies a price group and dimension values
3207
- */
3208
- dimensional_price_configuration?: NewPlanMaxGroupTieredPackagePrice.DimensionalPriceConfiguration | null;
3209
- /**
3210
- * An alias for the price.
3211
- */
3212
- external_price_id?: string | null;
3213
- /**
3214
- * If the Price represents a fixed cost, this represents the quantity of units
3215
- * applied.
3216
- */
3217
- fixed_price_quantity?: number | null;
3218
- /**
3219
- * The property used to group this price on an invoice
3220
- */
3221
- invoice_grouping_key?: string | null;
3222
- /**
3223
- * Within each billing cycle, specifies the cadence at which invoices are produced.
3224
- * If unspecified, a single invoice is produced per billing cycle.
3225
- */
3226
- invoicing_cycle_configuration?: NewPlanMaxGroupTieredPackagePrice.InvoicingCycleConfiguration | null;
3227
- /**
3228
- * User-specified key/value pairs for the resource. Individual keys can be removed
3229
- * by setting the value to `null`, and the entire metadata mapping can be cleared
3230
- * by setting `metadata` to `null`.
3231
- */
3232
- metadata?: Record<string, string | null> | null;
3233
- }
3234
- namespace NewPlanMaxGroupTieredPackagePrice {
3235
- /**
3236
- * For custom cadence: specifies the duration of the billing period in days or
3237
- * months.
3238
- */
3239
- interface BillingCycleConfiguration {
3240
- /**
3241
- * The duration of the billing period.
3242
- */
3243
- duration: number;
3244
- /**
3245
- * The unit of billing period duration.
3246
- */
3247
- duration_unit: 'day' | 'month';
3248
- }
3249
- /**
3250
- * For dimensional price: specifies a price group and dimension values
3251
- */
3252
- interface DimensionalPriceConfiguration {
3253
- /**
3254
- * The list of dimension values matching (in order) the dimensions of the price
3255
- * group
3256
- */
3257
- dimension_values: Array<string>;
3258
- /**
3259
- * The id of the dimensional price group to include this price in
3260
- */
3261
- dimensional_price_group_id?: string | null;
3262
- /**
3263
- * The external id of the dimensional price group to include this price in
3264
- */
3265
- external_dimensional_price_group_id?: string | null;
3266
- }
3267
- /**
3268
- * Within each billing cycle, specifies the cadence at which invoices are produced.
3269
- * If unspecified, a single invoice is produced per billing cycle.
3270
- */
3271
- interface InvoicingCycleConfiguration {
3272
- /**
3273
- * The duration of the billing period.
3274
- */
3275
- duration: number;
3276
- /**
3277
- * The unit of billing period duration.
3278
- */
3279
- duration_unit: 'day' | 'month';
3280
- }
3281
- }
3282
- interface NewPlanScalableMatrixWithUnitPricingPrice {
3283
- /**
3284
- * The cadence to bill for this price on.
3285
- */
3286
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
3287
- /**
3288
- * The id of the item the price will be associated with.
3289
- */
3290
- item_id: string;
3291
- model_type: 'scalable_matrix_with_unit_pricing';
3292
- /**
3293
- * The name of the price.
3294
- */
3295
- name: string;
3296
- scalable_matrix_with_unit_pricing_config: Record<string, unknown>;
3297
- /**
3298
- * The id of the billable metric for the price. Only needed if the price is
3299
- * usage-based.
3300
- */
3301
- billable_metric_id?: string | null;
3302
- /**
3303
- * If the Price represents a fixed cost, the price will be billed in-advance if
3304
- * this is true, and in-arrears if this is false.
3305
- */
3306
- billed_in_advance?: boolean | null;
3307
- /**
3308
- * For custom cadence: specifies the duration of the billing period in days or
3309
- * months.
3310
- */
3311
- billing_cycle_configuration?: NewPlanScalableMatrixWithUnitPricingPrice.BillingCycleConfiguration | null;
3312
- /**
3313
- * The per unit conversion rate of the price currency to the invoicing currency.
3314
- */
3315
- conversion_rate?: number | null;
3316
- /**
3317
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
3318
- * price is billed.
3319
- */
3320
- currency?: string | null;
3321
- /**
3322
- * For dimensional price: specifies a price group and dimension values
3323
- */
3324
- dimensional_price_configuration?: NewPlanScalableMatrixWithUnitPricingPrice.DimensionalPriceConfiguration | null;
3325
- /**
3326
- * An alias for the price.
3327
- */
3328
- external_price_id?: string | null;
3329
- /**
3330
- * If the Price represents a fixed cost, this represents the quantity of units
3331
- * applied.
3332
- */
3333
- fixed_price_quantity?: number | null;
3334
- /**
3335
- * The property used to group this price on an invoice
3336
- */
3337
- invoice_grouping_key?: string | null;
3338
- /**
3339
- * Within each billing cycle, specifies the cadence at which invoices are produced.
3340
- * If unspecified, a single invoice is produced per billing cycle.
3341
- */
3342
- invoicing_cycle_configuration?: NewPlanScalableMatrixWithUnitPricingPrice.InvoicingCycleConfiguration | null;
3343
- /**
3344
- * User-specified key/value pairs for the resource. Individual keys can be removed
3345
- * by setting the value to `null`, and the entire metadata mapping can be cleared
3346
- * by setting `metadata` to `null`.
3347
- */
3348
- metadata?: Record<string, string | null> | null;
3349
- }
3350
- namespace NewPlanScalableMatrixWithUnitPricingPrice {
3351
- /**
3352
- * For custom cadence: specifies the duration of the billing period in days or
3353
- * months.
3354
- */
3355
- interface BillingCycleConfiguration {
3356
- /**
3357
- * The duration of the billing period.
3358
- */
3359
- duration: number;
3360
- /**
3361
- * The unit of billing period duration.
3362
- */
3363
- duration_unit: 'day' | 'month';
3364
- }
3365
- /**
3366
- * For dimensional price: specifies a price group and dimension values
3367
- */
3368
- interface DimensionalPriceConfiguration {
3369
- /**
3370
- * The list of dimension values matching (in order) the dimensions of the price
3371
- * group
3372
- */
3373
- dimension_values: Array<string>;
3374
- /**
3375
- * The id of the dimensional price group to include this price in
3376
- */
3377
- dimensional_price_group_id?: string | null;
3378
- /**
3379
- * The external id of the dimensional price group to include this price in
3380
- */
3381
- external_dimensional_price_group_id?: string | null;
3382
- }
3383
- /**
3384
- * Within each billing cycle, specifies the cadence at which invoices are produced.
3385
- * If unspecified, a single invoice is produced per billing cycle.
3386
- */
3387
- interface InvoicingCycleConfiguration {
3388
- /**
3389
- * The duration of the billing period.
3390
- */
3391
- duration: number;
3392
- /**
3393
- * The unit of billing period duration.
3394
- */
3395
- duration_unit: 'day' | 'month';
3396
- }
3397
- }
3398
- interface NewPlanScalableMatrixWithTieredPricingPrice {
3399
- /**
3400
- * The cadence to bill for this price on.
3401
- */
3402
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
3403
- /**
3404
- * The id of the item the price will be associated with.
3405
- */
3406
- item_id: string;
3407
- model_type: 'scalable_matrix_with_tiered_pricing';
3408
- /**
3409
- * The name of the price.
3410
- */
3411
- name: string;
3412
- scalable_matrix_with_tiered_pricing_config: Record<string, unknown>;
3413
- /**
3414
- * The id of the billable metric for the price. Only needed if the price is
3415
- * usage-based.
3416
- */
3417
- billable_metric_id?: string | null;
3418
- /**
3419
- * If the Price represents a fixed cost, the price will be billed in-advance if
3420
- * this is true, and in-arrears if this is false.
3421
- */
3422
- billed_in_advance?: boolean | null;
3423
- /**
3424
- * For custom cadence: specifies the duration of the billing period in days or
3425
- * months.
3426
- */
3427
- billing_cycle_configuration?: NewPlanScalableMatrixWithTieredPricingPrice.BillingCycleConfiguration | null;
3428
- /**
3429
- * The per unit conversion rate of the price currency to the invoicing currency.
3430
- */
3431
- conversion_rate?: number | null;
3432
- /**
3433
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
3434
- * price is billed.
3435
- */
3436
- currency?: string | null;
3437
- /**
3438
- * For dimensional price: specifies a price group and dimension values
3439
- */
3440
- dimensional_price_configuration?: NewPlanScalableMatrixWithTieredPricingPrice.DimensionalPriceConfiguration | null;
3441
- /**
3442
- * An alias for the price.
3443
- */
3444
- external_price_id?: string | null;
3445
- /**
3446
- * If the Price represents a fixed cost, this represents the quantity of units
3447
- * applied.
3448
- */
3449
- fixed_price_quantity?: number | null;
3450
- /**
3451
- * The property used to group this price on an invoice
3452
- */
3453
- invoice_grouping_key?: string | null;
3454
- /**
3455
- * Within each billing cycle, specifies the cadence at which invoices are produced.
3456
- * If unspecified, a single invoice is produced per billing cycle.
3457
- */
3458
- invoicing_cycle_configuration?: NewPlanScalableMatrixWithTieredPricingPrice.InvoicingCycleConfiguration | null;
3459
- /**
3460
- * User-specified key/value pairs for the resource. Individual keys can be removed
3461
- * by setting the value to `null`, and the entire metadata mapping can be cleared
3462
- * by setting `metadata` to `null`.
3463
- */
3464
- metadata?: Record<string, string | null> | null;
3465
- }
3466
- namespace NewPlanScalableMatrixWithTieredPricingPrice {
3467
- /**
3468
- * For custom cadence: specifies the duration of the billing period in days or
3469
- * months.
3470
- */
3471
- interface BillingCycleConfiguration {
3472
- /**
3473
- * The duration of the billing period.
3474
- */
3475
- duration: number;
3476
- /**
3477
- * The unit of billing period duration.
3478
- */
3479
- duration_unit: 'day' | 'month';
3480
- }
3481
- /**
3482
- * For dimensional price: specifies a price group and dimension values
3483
- */
3484
- interface DimensionalPriceConfiguration {
3485
- /**
3486
- * The list of dimension values matching (in order) the dimensions of the price
3487
- * group
3488
- */
3489
- dimension_values: Array<string>;
3490
- /**
3491
- * The id of the dimensional price group to include this price in
3492
- */
3493
- dimensional_price_group_id?: string | null;
3494
- /**
3495
- * The external id of the dimensional price group to include this price in
3496
- */
3497
- external_dimensional_price_group_id?: string | null;
3498
- }
3499
- /**
3500
- * Within each billing cycle, specifies the cadence at which invoices are produced.
3501
- * If unspecified, a single invoice is produced per billing cycle.
3502
- */
3503
- interface InvoicingCycleConfiguration {
3504
- /**
3505
- * The duration of the billing period.
3506
- */
3507
- duration: number;
3508
- /**
3509
- * The unit of billing period duration.
3510
- */
3511
- duration_unit: 'day' | 'month';
3512
- }
3513
- }
3514
- interface NewPlanCumulativeGroupedBulkPrice {
3515
- /**
3516
- * The cadence to bill for this price on.
3517
- */
3518
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
3519
- cumulative_grouped_bulk_config: Record<string, unknown>;
3520
- /**
3521
- * The id of the item the price will be associated with.
3522
- */
3523
- item_id: string;
3524
- model_type: 'cumulative_grouped_bulk';
3525
- /**
3526
- * The name of the price.
3527
- */
3528
- name: string;
3529
- /**
3530
- * The id of the billable metric for the price. Only needed if the price is
3531
- * usage-based.
3532
- */
3533
- billable_metric_id?: string | null;
3534
- /**
3535
- * If the Price represents a fixed cost, the price will be billed in-advance if
3536
- * this is true, and in-arrears if this is false.
3537
- */
3538
- billed_in_advance?: boolean | null;
3539
- /**
3540
- * For custom cadence: specifies the duration of the billing period in days or
3541
- * months.
3542
- */
3543
- billing_cycle_configuration?: NewPlanCumulativeGroupedBulkPrice.BillingCycleConfiguration | null;
3544
- /**
3545
- * The per unit conversion rate of the price currency to the invoicing currency.
3546
- */
3547
- conversion_rate?: number | null;
3548
- /**
3549
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
3550
- * price is billed.
3551
- */
3552
- currency?: string | null;
3553
- /**
3554
- * For dimensional price: specifies a price group and dimension values
3555
- */
3556
- dimensional_price_configuration?: NewPlanCumulativeGroupedBulkPrice.DimensionalPriceConfiguration | null;
3557
- /**
3558
- * An alias for the price.
3559
- */
3560
- external_price_id?: string | null;
3561
- /**
3562
- * If the Price represents a fixed cost, this represents the quantity of units
3563
- * applied.
3564
- */
3565
- fixed_price_quantity?: number | null;
3566
- /**
3567
- * The property used to group this price on an invoice
3568
- */
3569
- invoice_grouping_key?: string | null;
3570
- /**
3571
- * Within each billing cycle, specifies the cadence at which invoices are produced.
3572
- * If unspecified, a single invoice is produced per billing cycle.
3573
- */
3574
- invoicing_cycle_configuration?: NewPlanCumulativeGroupedBulkPrice.InvoicingCycleConfiguration | null;
3575
- /**
3576
- * User-specified key/value pairs for the resource. Individual keys can be removed
3577
- * by setting the value to `null`, and the entire metadata mapping can be cleared
3578
- * by setting `metadata` to `null`.
3579
- */
3580
- metadata?: Record<string, string | null> | null;
3581
- }
3582
- namespace NewPlanCumulativeGroupedBulkPrice {
3583
- /**
3584
- * For custom cadence: specifies the duration of the billing period in days or
3585
- * months.
3586
- */
3587
- interface BillingCycleConfiguration {
3588
- /**
3589
- * The duration of the billing period.
3590
- */
3591
- duration: number;
3592
- /**
3593
- * The unit of billing period duration.
3594
- */
3595
- duration_unit: 'day' | 'month';
3596
- }
3597
- /**
3598
- * For dimensional price: specifies a price group and dimension values
3599
- */
3600
- interface DimensionalPriceConfiguration {
3601
- /**
3602
- * The list of dimension values matching (in order) the dimensions of the price
3603
- * group
3604
- */
3605
- dimension_values: Array<string>;
3606
- /**
3607
- * The id of the dimensional price group to include this price in
3608
- */
3609
- dimensional_price_group_id?: string | null;
3610
- /**
3611
- * The external id of the dimensional price group to include this price in
3612
- */
3613
- external_dimensional_price_group_id?: string | null;
3614
- }
3615
- /**
3616
- * Within each billing cycle, specifies the cadence at which invoices are produced.
3617
- * If unspecified, a single invoice is produced per billing cycle.
3618
- */
3619
- interface InvoicingCycleConfiguration {
3620
- /**
3621
- * The duration of the billing period.
3622
- */
3623
- duration: number;
3624
- /**
3625
- * The unit of billing period duration.
3626
- */
3627
- duration_unit: 'day' | 'month';
3628
- }
3629
- }
3630
- interface NewPlanTieredPackageWithMinimumPrice {
3631
- /**
3632
- * The cadence to bill for this price on.
3633
- */
3634
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
3635
- /**
3636
- * The id of the item the price will be associated with.
3637
- */
3638
- item_id: string;
3639
- model_type: 'tiered_package_with_minimum';
3640
- /**
3641
- * The name of the price.
3642
- */
3643
- name: string;
3644
- tiered_package_with_minimum_config: Record<string, unknown>;
3645
- /**
3646
- * The id of the billable metric for the price. Only needed if the price is
3647
- * usage-based.
3648
- */
3649
- billable_metric_id?: string | null;
3650
- /**
3651
- * If the Price represents a fixed cost, the price will be billed in-advance if
3652
- * this is true, and in-arrears if this is false.
3653
- */
3654
- billed_in_advance?: boolean | null;
3655
- /**
3656
- * For custom cadence: specifies the duration of the billing period in days or
3657
- * months.
3658
- */
3659
- billing_cycle_configuration?: NewPlanTieredPackageWithMinimumPrice.BillingCycleConfiguration | null;
3660
- /**
3661
- * The per unit conversion rate of the price currency to the invoicing currency.
3662
- */
3663
- conversion_rate?: number | null;
3664
- /**
3665
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
3666
- * price is billed.
3667
- */
3668
- currency?: string | null;
3669
- /**
3670
- * For dimensional price: specifies a price group and dimension values
3671
- */
3672
- dimensional_price_configuration?: NewPlanTieredPackageWithMinimumPrice.DimensionalPriceConfiguration | null;
3673
- /**
3674
- * An alias for the price.
3675
- */
3676
- external_price_id?: string | null;
3677
- /**
3678
- * If the Price represents a fixed cost, this represents the quantity of units
3679
- * applied.
3680
- */
3681
- fixed_price_quantity?: number | null;
3682
- /**
3683
- * The property used to group this price on an invoice
3684
- */
3685
- invoice_grouping_key?: string | null;
3686
- /**
3687
- * Within each billing cycle, specifies the cadence at which invoices are produced.
3688
- * If unspecified, a single invoice is produced per billing cycle.
3689
- */
3690
- invoicing_cycle_configuration?: NewPlanTieredPackageWithMinimumPrice.InvoicingCycleConfiguration | null;
3691
- /**
3692
- * User-specified key/value pairs for the resource. Individual keys can be removed
3693
- * by setting the value to `null`, and the entire metadata mapping can be cleared
3694
- * by setting `metadata` to `null`.
3695
- */
3696
- metadata?: Record<string, string | null> | null;
3697
- }
3698
- namespace NewPlanTieredPackageWithMinimumPrice {
3699
- /**
3700
- * For custom cadence: specifies the duration of the billing period in days or
3701
- * months.
3702
- */
3703
- interface BillingCycleConfiguration {
3704
- /**
3705
- * The duration of the billing period.
3706
- */
3707
- duration: number;
3708
- /**
3709
- * The unit of billing period duration.
3710
- */
3711
- duration_unit: 'day' | 'month';
3712
- }
3713
- /**
3714
- * For dimensional price: specifies a price group and dimension values
3715
- */
3716
- interface DimensionalPriceConfiguration {
3717
- /**
3718
- * The list of dimension values matching (in order) the dimensions of the price
3719
- * group
3720
- */
3721
- dimension_values: Array<string>;
3722
- /**
3723
- * The id of the dimensional price group to include this price in
3724
- */
3725
- dimensional_price_group_id?: string | null;
3726
- /**
3727
- * The external id of the dimensional price group to include this price in
3728
- */
3729
- external_dimensional_price_group_id?: string | null;
3730
- }
3731
- /**
3732
- * Within each billing cycle, specifies the cadence at which invoices are produced.
3733
- * If unspecified, a single invoice is produced per billing cycle.
3734
- */
3735
- interface InvoicingCycleConfiguration {
3736
- /**
3737
- * The duration of the billing period.
3738
- */
3739
- duration: number;
3740
- /**
3741
- * The unit of billing period duration.
3742
- */
3743
- duration_unit: 'day' | 'month';
3744
- }
3745
- }
3746
- interface NewPlanMatrixWithAllocationPrice {
3747
- /**
3748
- * The cadence to bill for this price on.
3749
- */
3750
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
3751
- /**
3752
- * The id of the item the price will be associated with.
3753
- */
3754
- item_id: string;
3755
- matrix_with_allocation_config: NewPlanMatrixWithAllocationPrice.MatrixWithAllocationConfig;
3756
- model_type: 'matrix_with_allocation';
3757
- /**
3758
- * The name of the price.
3759
- */
3760
- name: string;
3761
- /**
3762
- * The id of the billable metric for the price. Only needed if the price is
3763
- * usage-based.
3764
- */
3765
- billable_metric_id?: string | null;
3766
- /**
3767
- * If the Price represents a fixed cost, the price will be billed in-advance if
3768
- * this is true, and in-arrears if this is false.
3769
- */
3770
- billed_in_advance?: boolean | null;
3771
- /**
3772
- * For custom cadence: specifies the duration of the billing period in days or
3773
- * months.
3774
- */
3775
- billing_cycle_configuration?: NewPlanMatrixWithAllocationPrice.BillingCycleConfiguration | null;
3776
- /**
3777
- * The per unit conversion rate of the price currency to the invoicing currency.
3778
- */
3779
- conversion_rate?: number | null;
3780
- /**
3781
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
3782
- * price is billed.
3783
- */
3784
- currency?: string | null;
3785
- /**
3786
- * For dimensional price: specifies a price group and dimension values
3787
- */
3788
- dimensional_price_configuration?: NewPlanMatrixWithAllocationPrice.DimensionalPriceConfiguration | null;
3789
- /**
3790
- * An alias for the price.
3791
- */
3792
- external_price_id?: string | null;
3793
- /**
3794
- * If the Price represents a fixed cost, this represents the quantity of units
3795
- * applied.
3796
- */
3797
- fixed_price_quantity?: number | null;
3798
- /**
3799
- * The property used to group this price on an invoice
3800
- */
3801
- invoice_grouping_key?: string | null;
3802
- /**
3803
- * Within each billing cycle, specifies the cadence at which invoices are produced.
3804
- * If unspecified, a single invoice is produced per billing cycle.
3805
- */
3806
- invoicing_cycle_configuration?: NewPlanMatrixWithAllocationPrice.InvoicingCycleConfiguration | null;
3807
- /**
3808
- * User-specified key/value pairs for the resource. Individual keys can be removed
3809
- * by setting the value to `null`, and the entire metadata mapping can be cleared
3810
- * by setting `metadata` to `null`.
3811
- */
3812
- metadata?: Record<string, string | null> | null;
3813
- }
3814
- namespace NewPlanMatrixWithAllocationPrice {
3815
- interface MatrixWithAllocationConfig {
3816
- /**
3817
- * Allocation to be used to calculate the price
3818
- */
3819
- allocation: number;
3820
- /**
3821
- * Default per unit rate for any usage not bucketed into a specified matrix_value
3822
- */
3823
- default_unit_amount: string;
3824
- /**
3825
- * One or two event property values to evaluate matrix groups by
3826
- */
3827
- dimensions: Array<string | null>;
3828
- /**
3829
- * Matrix values for specified matrix grouping keys
3830
- */
3831
- matrix_values: Array<MatrixWithAllocationConfig.MatrixValue>;
3832
- }
3833
- namespace MatrixWithAllocationConfig {
3834
- interface MatrixValue {
3835
- /**
3836
- * One or two matrix keys to filter usage to this Matrix value by. For example,
3837
- * ["region", "tier"] could be used to filter cloud usage by a cloud region and an
3838
- * instance tier.
3839
- */
3840
- dimension_values: Array<string | null>;
3841
- /**
3842
- * Unit price for the specified dimension_values
3843
- */
3844
- unit_amount: string;
3845
- }
3846
- }
3847
- /**
3848
- * For custom cadence: specifies the duration of the billing period in days or
3849
- * months.
3850
- */
3851
- interface BillingCycleConfiguration {
3852
- /**
3853
- * The duration of the billing period.
3854
- */
3855
- duration: number;
3856
- /**
3857
- * The unit of billing period duration.
3858
- */
3859
- duration_unit: 'day' | 'month';
3860
- }
3861
- /**
3862
- * For dimensional price: specifies a price group and dimension values
3863
- */
3864
- interface DimensionalPriceConfiguration {
3865
- /**
3866
- * The list of dimension values matching (in order) the dimensions of the price
3867
- * group
3868
- */
3869
- dimension_values: Array<string>;
3870
- /**
3871
- * The id of the dimensional price group to include this price in
3872
- */
3873
- dimensional_price_group_id?: string | null;
3874
- /**
3875
- * The external id of the dimensional price group to include this price in
3876
- */
3877
- external_dimensional_price_group_id?: string | null;
3878
- }
3879
- /**
3880
- * Within each billing cycle, specifies the cadence at which invoices are produced.
3881
- * If unspecified, a single invoice is produced per billing cycle.
3882
- */
3883
- interface InvoicingCycleConfiguration {
3884
- /**
3885
- * The duration of the billing period.
3886
- */
3887
- duration: number;
3888
- /**
3889
- * The unit of billing period duration.
3890
- */
3891
- duration_unit: 'day' | 'month';
3892
- }
3893
- }
3894
- interface NewPlanGroupedTieredPrice {
3895
- /**
3896
- * The cadence to bill for this price on.
3897
- */
3898
- cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
3899
- grouped_tiered_config: Record<string, unknown>;
3900
- /**
3901
- * The id of the item the price will be associated with.
3902
- */
3903
- item_id: string;
3904
- model_type: 'grouped_tiered';
3905
- /**
3906
- * The name of the price.
3907
- */
3908
- name: string;
3909
- /**
3910
- * The id of the billable metric for the price. Only needed if the price is
3911
- * usage-based.
3912
- */
3913
- billable_metric_id?: string | null;
3914
- /**
3915
- * If the Price represents a fixed cost, the price will be billed in-advance if
3916
- * this is true, and in-arrears if this is false.
3917
- */
3918
- billed_in_advance?: boolean | null;
3919
- /**
3920
- * For custom cadence: specifies the duration of the billing period in days or
3921
- * months.
3922
- */
3923
- billing_cycle_configuration?: NewPlanGroupedTieredPrice.BillingCycleConfiguration | null;
3924
- /**
3925
- * The per unit conversion rate of the price currency to the invoicing currency.
3926
- */
3927
- conversion_rate?: number | null;
3928
- /**
3929
- * An ISO 4217 currency string, or custom pricing unit identifier, in which this
3930
- * price is billed.
3931
- */
3932
- currency?: string | null;
3933
- /**
3934
- * For dimensional price: specifies a price group and dimension values
3935
- */
3936
- dimensional_price_configuration?: NewPlanGroupedTieredPrice.DimensionalPriceConfiguration | null;
3937
- /**
3938
- * An alias for the price.
3939
- */
3940
- external_price_id?: string | null;
3941
- /**
3942
- * If the Price represents a fixed cost, this represents the quantity of units
3943
- * applied.
3944
- */
3945
- fixed_price_quantity?: number | null;
3946
- /**
3947
- * The property used to group this price on an invoice
3948
- */
3949
- invoice_grouping_key?: string | null;
3950
- /**
3951
- * Within each billing cycle, specifies the cadence at which invoices are produced.
3952
- * If unspecified, a single invoice is produced per billing cycle.
3953
- */
3954
- invoicing_cycle_configuration?: NewPlanGroupedTieredPrice.InvoicingCycleConfiguration | null;
3955
- /**
3956
- * User-specified key/value pairs for the resource. Individual keys can be removed
3957
- * by setting the value to `null`, and the entire metadata mapping can be cleared
3958
- * by setting `metadata` to `null`.
3959
- */
3960
- metadata?: Record<string, string | null> | null;
3961
- }
3962
- namespace NewPlanGroupedTieredPrice {
3963
- /**
3964
- * For custom cadence: specifies the duration of the billing period in days or
3965
- * months.
3966
- */
3967
- interface BillingCycleConfiguration {
3968
- /**
3969
- * The duration of the billing period.
3970
- */
3971
- duration: number;
3972
- /**
3973
- * The unit of billing period duration.
3974
- */
3975
- duration_unit: 'day' | 'month';
3976
- }
3977
- /**
3978
- * For dimensional price: specifies a price group and dimension values
3979
- */
3980
- interface DimensionalPriceConfiguration {
3981
- /**
3982
- * The list of dimension values matching (in order) the dimensions of the price
3983
- * group
3984
- */
3985
- dimension_values: Array<string>;
3986
- /**
3987
- * The id of the dimensional price group to include this price in
3988
- */
3989
- dimensional_price_group_id?: string | null;
3990
- /**
3991
- * The external id of the dimensional price group to include this price in
3992
- */
3993
- external_dimensional_price_group_id?: string | null;
3994
- }
3995
- /**
3996
- * Within each billing cycle, specifies the cadence at which invoices are produced.
3997
- * If unspecified, a single invoice is produced per billing cycle.
3998
- */
3999
- interface InvoicingCycleConfiguration {
4000
- /**
4001
- * The duration of the billing period.
4002
- */
4003
- duration: number;
4004
- /**
4005
- * The unit of billing period duration.
4006
- */
4007
- duration_unit: 'day' | 'month';
4008
- }
4009
- }
4010
- }
4011
217
  export interface PlanUpdateParams {
4012
218
  /**
4013
219
  * An optional user-defined ID for this plan resource, used throughout the system