orb-billing 1.23.0 → 1.24.1

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 (109) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/error.d.ts +1 -1
  3. package/error.d.ts.map +1 -1
  4. package/error.js +4 -4
  5. package/error.js.map +1 -1
  6. package/error.mjs +2 -2
  7. package/error.mjs.map +1 -1
  8. package/index.d.mts +4 -4
  9. package/index.d.ts +4 -4
  10. package/index.d.ts.map +1 -1
  11. package/index.js +7 -3
  12. package/index.js.map +1 -1
  13. package/index.mjs +6 -2
  14. package/index.mjs.map +1 -1
  15. package/package.json +3 -1
  16. package/resources/coupons/coupons.d.ts +60 -2
  17. package/resources/coupons/coupons.d.ts.map +1 -1
  18. package/resources/coupons/coupons.js.map +1 -1
  19. package/resources/coupons/coupons.mjs.map +1 -1
  20. package/resources/credit-notes.d.ts +57 -5
  21. package/resources/credit-notes.d.ts.map +1 -1
  22. package/resources/credit-notes.js.map +1 -1
  23. package/resources/credit-notes.mjs.map +1 -1
  24. package/resources/customers/balance-transactions.d.ts +2 -2
  25. package/resources/customers/balance-transactions.d.ts.map +1 -1
  26. package/resources/customers/balance-transactions.js.map +1 -1
  27. package/resources/customers/balance-transactions.mjs.map +1 -1
  28. package/resources/customers/credits/credits.d.ts +2 -2
  29. package/resources/customers/credits/credits.d.ts.map +1 -1
  30. package/resources/customers/credits/index.d.ts +1 -1
  31. package/resources/customers/credits/index.d.ts.map +1 -1
  32. package/resources/customers/credits/ledger.d.ts +8 -8
  33. package/resources/customers/credits/ledger.d.ts.map +1 -1
  34. package/resources/customers/credits/ledger.js +1 -1
  35. package/resources/customers/credits/ledger.js.map +1 -1
  36. package/resources/customers/credits/ledger.mjs +1 -1
  37. package/resources/customers/credits/ledger.mjs.map +1 -1
  38. package/resources/customers/customers.d.ts +696 -8
  39. package/resources/customers/customers.d.ts.map +1 -1
  40. package/resources/customers/customers.js.map +1 -1
  41. package/resources/customers/customers.mjs.map +1 -1
  42. package/resources/customers/usage.d.ts +74 -58
  43. package/resources/customers/usage.d.ts.map +1 -1
  44. package/resources/customers/usage.js +14 -14
  45. package/resources/customers/usage.js.map +1 -1
  46. package/resources/customers/usage.mjs +14 -14
  47. package/resources/customers/usage.mjs.map +1 -1
  48. package/resources/events/events.d.ts +40 -40
  49. package/resources/events/events.js +40 -40
  50. package/resources/events/events.mjs +40 -40
  51. package/resources/index.d.ts +4 -3
  52. package/resources/index.d.ts.map +1 -1
  53. package/resources/index.js +19 -4
  54. package/resources/index.js.map +1 -1
  55. package/resources/index.mjs +2 -1
  56. package/resources/index.mjs.map +1 -1
  57. package/resources/invoice-line-items.d.ts +2 -2
  58. package/resources/invoice-line-items.d.ts.map +1 -1
  59. package/resources/invoices.d.ts +358 -71
  60. package/resources/invoices.d.ts.map +1 -1
  61. package/resources/invoices.js.map +1 -1
  62. package/resources/invoices.mjs.map +1 -1
  63. package/resources/plans/plans.d.ts +648 -4
  64. package/resources/plans/plans.d.ts.map +1 -1
  65. package/resources/plans/plans.js.map +1 -1
  66. package/resources/plans/plans.mjs.map +1 -1
  67. package/resources/prices/index.d.ts +1 -1
  68. package/resources/prices/index.d.ts.map +1 -1
  69. package/resources/prices/index.js +3 -3
  70. package/resources/prices/index.js.map +1 -1
  71. package/resources/prices/index.mjs +1 -1
  72. package/resources/prices/index.mjs.map +1 -1
  73. package/resources/prices/prices.d.ts +56 -83
  74. package/resources/prices/prices.d.ts.map +1 -1
  75. package/resources/prices/prices.js.map +1 -1
  76. package/resources/prices/prices.mjs.map +1 -1
  77. package/resources/shared.d.ts +62 -0
  78. package/resources/shared.d.ts.map +1 -0
  79. package/resources/shared.js +4 -0
  80. package/resources/shared.js.map +1 -0
  81. package/resources/shared.mjs +3 -0
  82. package/resources/shared.mjs.map +1 -0
  83. package/resources/subscriptions.d.ts +1084 -241
  84. package/resources/subscriptions.d.ts.map +1 -1
  85. package/resources/subscriptions.js.map +1 -1
  86. package/resources/subscriptions.mjs.map +1 -1
  87. package/src/error.ts +2 -2
  88. package/src/index.ts +9 -4
  89. package/src/resources/coupons/coupons.ts +76 -2
  90. package/src/resources/credit-notes.ts +81 -5
  91. package/src/resources/customers/balance-transactions.ts +18 -2
  92. package/src/resources/customers/credits/credits.ts +2 -2
  93. package/src/resources/customers/credits/index.ts +2 -2
  94. package/src/resources/customers/credits/ledger.ts +23 -23
  95. package/src/resources/customers/customers.ts +1144 -12
  96. package/src/resources/customers/usage.ts +80 -62
  97. package/src/resources/events/events.ts +40 -40
  98. package/src/resources/index.ts +3 -3
  99. package/src/resources/invoice-line-items.ts +2 -2
  100. package/src/resources/invoices.ts +598 -91
  101. package/src/resources/plans/plans.ts +810 -4
  102. package/src/resources/prices/index.ts +1 -1
  103. package/src/resources/prices/prices.ts +67 -100
  104. package/src/resources/shared.ts +84 -0
  105. package/src/resources/subscriptions.ts +1291 -279
  106. package/src/version.ts +1 -1
  107. package/version.d.ts +1 -1
  108. package/version.js +1 -1
  109. package/version.mjs +1 -1
@@ -65,13 +65,13 @@ export class Subscriptions extends APIResource {
65
65
  *
66
66
  * ```json
67
67
  * {
68
- * ...
69
- * "id": "price_id",
70
- * "model_type": "unit",
71
- * "unit_config": {
72
- * "unit_amount": "0.50"
73
- * }
74
- * ...
68
+ * ...
69
+ * "id": "price_id",
70
+ * "model_type": "unit",
71
+ * "unit_config": {
72
+ * "unit_amount": "0.50"
73
+ * }
74
+ * ...
75
75
  * }
76
76
  * ```
77
77
  *
@@ -85,24 +85,24 @@ export class Subscriptions extends APIResource {
85
85
  *
86
86
  * ```json
87
87
  * {
88
- * ...
89
- * "id": "price_id",
90
- * "model_type": "tiered",
91
- * "tiered_config": {
92
- * "tiers": [
93
- * {
94
- * "first_unit":"1",
95
- * "last_unit": "10",
96
- * "unit_amount": "0.50"
97
- * },
98
- * {
99
- * "first_unit": "10",
100
- * "last_unit": null,
101
- * "unit_amount": "0.10"
102
- * }
103
- * ]
104
- * }
105
- * ...
88
+ * ...
89
+ * "id": "price_id",
90
+ * "model_type": "tiered",
91
+ * "tiered_config": {
92
+ * "tiers": [
93
+ * {
94
+ * "first_unit":"1",
95
+ * "last_unit": "10",
96
+ * "unit_amount": "0.50"
97
+ * },
98
+ * {
99
+ * "first_unit": "10",
100
+ * "last_unit": null,
101
+ * "unit_amount": "0.10"
102
+ * }
103
+ * ]
104
+ * }
105
+ * ...
106
106
  * }
107
107
  * ```
108
108
  *
@@ -117,22 +117,22 @@ export class Subscriptions extends APIResource {
117
117
  *
118
118
  * ```json
119
119
  * {
120
- * ...
121
- * "id": "price_id",
122
- * "model_type": "bulk",
123
- * "bulk_config": {
124
- * "tiers": [
125
- * {
126
- * "maximum_units": "10",
127
- * "unit_amount": "0.50"
128
- * },
129
- * {
130
- * "maximum_units": "1000",
131
- * "unit_amount": "0.40"
132
- * }
133
- * ]
134
- * }
135
- * ...
120
+ * ...
121
+ * "id": "price_id",
122
+ * "model_type": "bulk",
123
+ * "bulk_config": {
124
+ * "tiers": [
125
+ * {
126
+ * "maximum_units": "10",
127
+ * "unit_amount": "0.50"
128
+ * },
129
+ * {
130
+ * "maximum_units": "1000",
131
+ * "unit_amount": "0.40"
132
+ * }
133
+ * ]
134
+ * }
135
+ * ...
136
136
  * }
137
137
  * ```
138
138
  *
@@ -144,14 +144,14 @@ export class Subscriptions extends APIResource {
144
144
  *
145
145
  * ```json
146
146
  * {
147
- * ...
148
- * "id": "price_id",
149
- * "model_type": "package",
150
- * "package_config": {
151
- * "package_amount": "0.80",
152
- * "package_size": 10
153
- * }
154
- * ...
147
+ * ...
148
+ * "id": "price_id",
149
+ * "model_type": "package",
150
+ * "package_config": {
151
+ * "package_amount": "0.80",
152
+ * "package_size": 10
153
+ * }
154
+ * ...
155
155
  * }
156
156
  * ```
157
157
  *
@@ -164,14 +164,14 @@ export class Subscriptions extends APIResource {
164
164
  *
165
165
  * ```json
166
166
  * {
167
- * ...
168
- * "id": "price_id"
169
- * "model_type": "bps",
170
- * "bps_config": {
171
- * "bps": 125,
172
- * "per_event_cap": "11.00"
173
- * }
174
- * ...
167
+ * ...
168
+ * "id": "price_id"
169
+ * "model_type": "bps",
170
+ * "bps_config": {
171
+ * "bps": 125,
172
+ * "per_event_cap": "11.00"
173
+ * }
174
+ * ...
175
175
  * }
176
176
  * ```
177
177
  *
@@ -186,25 +186,25 @@ export class Subscriptions extends APIResource {
186
186
  *
187
187
  * ```json
188
188
  * {
189
- * ...
190
- * "id": "price_id"
191
- * "model_type": "bulk_bps",
192
- * "bulk_bps_config": {
193
- * "tiers": [
194
- * {
195
- * "minimum_amount": "0.00",
196
- * "maximum_amount": "1000000.00",
197
- * "bps": 125,
198
- * "per_event_cap": "19.00"
199
- * },
200
- * {
201
- * "minimum_amount":"1000000.00",
202
- * "maximum_amount": null,
203
- * "bps": 115,
204
- * "per_event_cap": "4.00"
205
- * }
206
- * ]
207
- * }
189
+ * ...
190
+ * "id": "price_id"
191
+ * "model_type": "bulk_bps",
192
+ * "bulk_bps_config": {
193
+ * "tiers": [
194
+ * {
195
+ * "minimum_amount": "0.00",
196
+ * "maximum_amount": "1000000.00",
197
+ * "bps": 125,
198
+ * "per_event_cap": "19.00"
199
+ * },
200
+ * {
201
+ * "minimum_amount":"1000000.00",
202
+ * "maximum_amount": null,
203
+ * "bps": 115,
204
+ * "per_event_cap": "4.00"
205
+ * }
206
+ * ]
207
+ * }
208
208
  * ...
209
209
  * }
210
210
  * ```
@@ -221,26 +221,26 @@ export class Subscriptions extends APIResource {
221
221
  *
222
222
  * ```json
223
223
  * {
224
- * ...
225
- * "id": "price_id"
226
- * "model_type": "tiered_bps",
227
- * "tiered_bps_config": {
228
- * "tiers": [
229
- * {
230
- * "minimum_amount": "0.00",
231
- * "maximum_amount": "1000000.00",
232
- * "bps": 125,
233
- * "per_event_cap": "19.00"
234
- * },
235
- * {
236
- * "minimum_amount":"1000000",
237
- * "maximum_amount": null,
238
- * "bps": 115,
239
- * "per_event_cap": "4.00"
240
- * }
241
- * ]
242
- * }
243
- * ...
224
+ * ...
225
+ * "id": "price_id"
226
+ * "model_type": "tiered_bps",
227
+ * "tiered_bps_config": {
228
+ * "tiers": [
229
+ * {
230
+ * "minimum_amount": "0.00",
231
+ * "maximum_amount": "1000000.00",
232
+ * "bps": 125,
233
+ * "per_event_cap": "19.00"
234
+ * },
235
+ * {
236
+ * "minimum_amount":"1000000",
237
+ * "maximum_amount": null,
238
+ * "bps": 115,
239
+ * "per_event_cap": "4.00"
240
+ * }
241
+ * ]
242
+ * }
243
+ * ...
244
244
  * }
245
245
  * ```
246
246
  *
@@ -256,26 +256,27 @@ export class Subscriptions extends APIResource {
256
256
  * `default_unit_amount`.
257
257
  *
258
258
  * ```json
259
- * ...
260
- * "model_type": "matrix"
261
- * "matrix_config": {
262
- * "default_unit_amount": "3.00",
263
- * "dimensions": [
264
- * "cluster_name",
265
- * "region"
266
- * ],
267
- * "matrix_values": [
268
259
  * {
269
- * "dimension_values": [
270
- * "alpha",
271
- * "west"
272
- * ],
273
- * "unit_amount": "2.00"
274
- * },
275
- * ...
276
- * ]
260
+ * ...
261
+ * "model_type": "matrix",
262
+ * "matrix_config": {
263
+ * "default_unit_amount": "3.00",
264
+ * "dimensions": [
265
+ * "cluster_name",
266
+ * "region"
267
+ * ],
268
+ * "matrix_values": [
269
+ * {
270
+ * "dimension_values": [
271
+ * "alpha",
272
+ * "west"
273
+ * ],
274
+ * "unit_amount": "2.00"
275
+ * },
276
+ * ...
277
+ * ]
278
+ * }
277
279
  * }
278
- * ...
279
280
  * ```
280
281
  *
281
282
  * ### Fixed fees
@@ -286,14 +287,14 @@ export class Subscriptions extends APIResource {
286
287
  *
287
288
  * ```json
288
289
  * {
289
- * ...
290
- * "id": "price_id",
291
- * "model_type": "unit",
292
- * "unit_config": {
293
- * "unit_amount": "2.00"
294
- * },
295
- * "fixed_price_quantity": 3.0
296
- * ...
290
+ * ...
291
+ * "id": "price_id",
292
+ * "model_type": "unit",
293
+ * "unit_config": {
294
+ * "unit_amount": "2.00"
295
+ * },
296
+ * "fixed_price_quantity": 3.0
297
+ * ...
297
298
  * }
298
299
  * ```
299
300
  *
@@ -318,14 +319,14 @@ export class Subscriptions extends APIResource {
318
319
  *
319
320
  * ```json
320
321
  * {
321
- * ...
322
- * "id": "price_id",
323
- * "model_type": "unit",
324
- * "unit_config": {
325
- * "unit_amount": "0.50"
326
- * },
327
- * "minimum_amount": "100.00"
328
- * ...
322
+ * ...
323
+ * "id": "price_id",
324
+ * "model_type": "unit",
325
+ * "unit_config": {
326
+ * "unit_amount": "0.50"
327
+ * },
328
+ * "minimum_amount": "100.00"
329
+ * ...
329
330
  * }
330
331
  * ```
331
332
  *
@@ -333,14 +334,14 @@ export class Subscriptions extends APIResource {
333
334
  *
334
335
  * ```json
335
336
  * {
336
- * ...
337
- * "id": "price_id",
338
- * "model_type": "unit",
339
- * "unit_config": {
340
- * "unit_amount": "0.50"
341
- * },
342
- * "minimum_amount": null
343
- * ...
337
+ * ...
338
+ * "id": "price_id",
339
+ * "model_type": "unit",
340
+ * "unit_config": {
341
+ * "unit_amount": "0.50"
342
+ * },
343
+ * "minimum_amount": null
344
+ * ...
344
345
  * }
345
346
  * ```
346
347
  *
@@ -355,12 +356,12 @@ export class Subscriptions extends APIResource {
355
356
  * To add a discount for a specific price, add `discount` to the price in the
356
357
  * `price_overrides` object. Discount should be a dictionary of the format:
357
358
  *
358
- * ```json
359
+ * ```ts
359
360
  * {
360
- * "discount_type": "amount" | "percentage" | "usage",
361
- * "amount_discount": string,
362
- * "percentage_discount": string,
363
- * "usage_discount": string
361
+ * "discount_type": "amount" | "percentage" | "usage",
362
+ * "amount_discount": string,
363
+ * "percentage_discount": string,
364
+ * "usage_discount": string
364
365
  * }
365
366
  * ```
366
367
  *
@@ -371,13 +372,13 @@ export class Subscriptions extends APIResource {
371
372
  *
372
373
  * ```json
373
374
  * {
374
- * ...
375
- * "id": "price_id",
376
- * "model_type": "unit",
377
- * "unit_config": {
378
- * "unit_amount": "0.50"
379
- * },
380
- * "discount": {"discount_type": "amount", "amount_discount": "175"},
375
+ * ...
376
+ * "id": "price_id",
377
+ * "model_type": "unit",
378
+ * "unit_config": {
379
+ * "unit_amount": "0.50"
380
+ * },
381
+ * "discount": {"discount_type": "amount", "amount_discount": "175"},
381
382
  * }
382
383
  * ```
383
384
  *
@@ -385,11 +386,11 @@ export class Subscriptions extends APIResource {
385
386
  *
386
387
  * ```json
387
388
  * {
388
- * "customer_id": "customer_id",
389
- * "plan_id": "plan_id",
390
- * "discount": null,
391
- * "price_overrides": [ ... ]
392
- * ...
389
+ * "customer_id": "customer_id",
390
+ * "plan_id": "plan_id",
391
+ * "discount": null,
392
+ * "price_overrides": [ ... ]
393
+ * ...
393
394
  * }
394
395
  * ```
395
396
  *
@@ -1626,20 +1627,6 @@ export namespace Subscription {
1626
1627
  }
1627
1628
  }
1628
1629
 
1629
- export interface Subscriptions {
1630
- data: Array<Subscription>;
1631
-
1632
- pagination_metadata: Subscriptions.PaginationMetadata;
1633
- }
1634
-
1635
- export namespace Subscriptions {
1636
- export interface PaginationMetadata {
1637
- has_more: boolean;
1638
-
1639
- next_cursor: string | null;
1640
- }
1641
- }
1642
-
1643
1630
  export type SubscriptionUsage =
1644
1631
  | SubscriptionUsage.UngroupedSubscriptionUsage
1645
1632
  | SubscriptionUsage.GroupedSubscriptionUsage;
@@ -1722,6 +1709,20 @@ export namespace SubscriptionUsage {
1722
1709
  }
1723
1710
  }
1724
1711
 
1712
+ export interface Subscriptions {
1713
+ data: Array<Subscription>;
1714
+
1715
+ pagination_metadata: Subscriptions.PaginationMetadata;
1716
+ }
1717
+
1718
+ export namespace Subscriptions {
1719
+ export interface PaginationMetadata {
1720
+ has_more: boolean;
1721
+
1722
+ next_cursor: string | null;
1723
+ }
1724
+ }
1725
+
1725
1726
  export interface SubscriptionFetchCostsResponse {
1726
1727
  data: Array<SubscriptionFetchCostsResponse.Data>;
1727
1728
  }
@@ -2132,7 +2133,7 @@ export namespace SubscriptionCreateParams {
2132
2133
  /**
2133
2134
  * The subscription's override discount for the plan.
2134
2135
  */
2135
- discount?: PricesAPI.Discount | null;
2136
+ discount?: OverrideUnitPrice.Discount | null;
2136
2137
 
2137
2138
  /**
2138
2139
  * The starting quantity of the price, if the price is a fixed price.
@@ -2162,6 +2163,41 @@ export namespace SubscriptionCreateParams {
2162
2163
  */
2163
2164
  scaling_factor?: number | null;
2164
2165
  }
2166
+
2167
+ /**
2168
+ * The subscription's override discount for the plan.
2169
+ */
2170
+ export interface Discount {
2171
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
2172
+
2173
+ /**
2174
+ * Only available if discount_type is `amount`.
2175
+ */
2176
+ amount_discount?: string | null;
2177
+
2178
+ /**
2179
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
2180
+ * this can be a subset of prices.
2181
+ */
2182
+ applies_to_price_ids?: Array<string> | null;
2183
+
2184
+ /**
2185
+ * Only available if discount_type is `percentage`. This is a number between 0
2186
+ * and 1.
2187
+ */
2188
+ percentage_discount?: number | null;
2189
+
2190
+ /**
2191
+ * Only available if discount_type is `trial`
2192
+ */
2193
+ trial_amount_discount?: string | null;
2194
+
2195
+ /**
2196
+ * Only available if discount_type is `usage`. Number of usage units that this
2197
+ * discount is for
2198
+ */
2199
+ usage_discount?: number | null;
2200
+ }
2165
2201
  }
2166
2202
 
2167
2203
  export interface OverridePackagePrice {
@@ -2174,7 +2210,7 @@ export namespace SubscriptionCreateParams {
2174
2210
  /**
2175
2211
  * The subscription's override discount for the plan.
2176
2212
  */
2177
- discount?: PricesAPI.Discount | null;
2213
+ discount?: OverridePackagePrice.Discount | null;
2178
2214
 
2179
2215
  /**
2180
2216
  * The starting quantity of the price, if the price is a fixed price.
@@ -2205,6 +2241,41 @@ export namespace SubscriptionCreateParams {
2205
2241
  */
2206
2242
  package_size?: number | null;
2207
2243
  }
2244
+
2245
+ /**
2246
+ * The subscription's override discount for the plan.
2247
+ */
2248
+ export interface Discount {
2249
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
2250
+
2251
+ /**
2252
+ * Only available if discount_type is `amount`.
2253
+ */
2254
+ amount_discount?: string | null;
2255
+
2256
+ /**
2257
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
2258
+ * this can be a subset of prices.
2259
+ */
2260
+ applies_to_price_ids?: Array<string> | null;
2261
+
2262
+ /**
2263
+ * Only available if discount_type is `percentage`. This is a number between 0
2264
+ * and 1.
2265
+ */
2266
+ percentage_discount?: number | null;
2267
+
2268
+ /**
2269
+ * Only available if discount_type is `trial`
2270
+ */
2271
+ trial_amount_discount?: string | null;
2272
+
2273
+ /**
2274
+ * Only available if discount_type is `usage`. Number of usage units that this
2275
+ * discount is for
2276
+ */
2277
+ usage_discount?: number | null;
2278
+ }
2208
2279
  }
2209
2280
 
2210
2281
  export interface OverrideMatrixPrice {
@@ -2217,7 +2288,7 @@ export namespace SubscriptionCreateParams {
2217
2288
  /**
2218
2289
  * The subscription's override discount for the plan.
2219
2290
  */
2220
- discount?: PricesAPI.Discount | null;
2291
+ discount?: OverrideMatrixPrice.Discount | null;
2221
2292
 
2222
2293
  /**
2223
2294
  * The starting quantity of the price, if the price is a fixed price.
@@ -2279,6 +2350,41 @@ export namespace SubscriptionCreateParams {
2279
2350
  scaling_factor?: number | null;
2280
2351
  }
2281
2352
  }
2353
+
2354
+ /**
2355
+ * The subscription's override discount for the plan.
2356
+ */
2357
+ export interface Discount {
2358
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
2359
+
2360
+ /**
2361
+ * Only available if discount_type is `amount`.
2362
+ */
2363
+ amount_discount?: string | null;
2364
+
2365
+ /**
2366
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
2367
+ * this can be a subset of prices.
2368
+ */
2369
+ applies_to_price_ids?: Array<string> | null;
2370
+
2371
+ /**
2372
+ * Only available if discount_type is `percentage`. This is a number between 0
2373
+ * and 1.
2374
+ */
2375
+ percentage_discount?: number | null;
2376
+
2377
+ /**
2378
+ * Only available if discount_type is `trial`
2379
+ */
2380
+ trial_amount_discount?: string | null;
2381
+
2382
+ /**
2383
+ * Only available if discount_type is `usage`. Number of usage units that this
2384
+ * discount is for
2385
+ */
2386
+ usage_discount?: number | null;
2387
+ }
2282
2388
  }
2283
2389
 
2284
2390
  export interface OverrideTieredPrice {
@@ -2291,7 +2397,7 @@ export namespace SubscriptionCreateParams {
2291
2397
  /**
2292
2398
  * The subscription's override discount for the plan.
2293
2399
  */
2294
- discount?: PricesAPI.Discount | null;
2400
+ discount?: OverrideTieredPrice.Discount | null;
2295
2401
 
2296
2402
  /**
2297
2403
  * The starting quantity of the price, if the price is a fixed price.
@@ -2335,6 +2441,41 @@ export namespace SubscriptionCreateParams {
2335
2441
  last_unit?: number | null;
2336
2442
  }
2337
2443
  }
2444
+
2445
+ /**
2446
+ * The subscription's override discount for the plan.
2447
+ */
2448
+ export interface Discount {
2449
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
2450
+
2451
+ /**
2452
+ * Only available if discount_type is `amount`.
2453
+ */
2454
+ amount_discount?: string | null;
2455
+
2456
+ /**
2457
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
2458
+ * this can be a subset of prices.
2459
+ */
2460
+ applies_to_price_ids?: Array<string> | null;
2461
+
2462
+ /**
2463
+ * Only available if discount_type is `percentage`. This is a number between 0
2464
+ * and 1.
2465
+ */
2466
+ percentage_discount?: number | null;
2467
+
2468
+ /**
2469
+ * Only available if discount_type is `trial`
2470
+ */
2471
+ trial_amount_discount?: string | null;
2472
+
2473
+ /**
2474
+ * Only available if discount_type is `usage`. Number of usage units that this
2475
+ * discount is for
2476
+ */
2477
+ usage_discount?: number | null;
2478
+ }
2338
2479
  }
2339
2480
 
2340
2481
  export interface OverrideTieredBpsPrice {
@@ -2347,7 +2488,7 @@ export namespace SubscriptionCreateParams {
2347
2488
  /**
2348
2489
  * The subscription's override discount for the plan.
2349
2490
  */
2350
- discount?: PricesAPI.Discount | null;
2491
+ discount?: OverrideTieredBpsPrice.Discount | null;
2351
2492
 
2352
2493
  /**
2353
2494
  * The starting quantity of the price, if the price is a fixed price.
@@ -2397,6 +2538,41 @@ export namespace SubscriptionCreateParams {
2397
2538
  per_unit_maximum?: string | null;
2398
2539
  }
2399
2540
  }
2541
+
2542
+ /**
2543
+ * The subscription's override discount for the plan.
2544
+ */
2545
+ export interface Discount {
2546
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
2547
+
2548
+ /**
2549
+ * Only available if discount_type is `amount`.
2550
+ */
2551
+ amount_discount?: string | null;
2552
+
2553
+ /**
2554
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
2555
+ * this can be a subset of prices.
2556
+ */
2557
+ applies_to_price_ids?: Array<string> | null;
2558
+
2559
+ /**
2560
+ * Only available if discount_type is `percentage`. This is a number between 0
2561
+ * and 1.
2562
+ */
2563
+ percentage_discount?: number | null;
2564
+
2565
+ /**
2566
+ * Only available if discount_type is `trial`
2567
+ */
2568
+ trial_amount_discount?: string | null;
2569
+
2570
+ /**
2571
+ * Only available if discount_type is `usage`. Number of usage units that this
2572
+ * discount is for
2573
+ */
2574
+ usage_discount?: number | null;
2575
+ }
2400
2576
  }
2401
2577
 
2402
2578
  export interface OverrideBpsPrice {
@@ -2409,7 +2585,7 @@ export namespace SubscriptionCreateParams {
2409
2585
  /**
2410
2586
  * The subscription's override discount for the plan.
2411
2587
  */
2412
- discount?: PricesAPI.Discount | null;
2588
+ discount?: OverrideBpsPrice.Discount | null;
2413
2589
 
2414
2590
  /**
2415
2591
  * The starting quantity of the price, if the price is a fixed price.
@@ -2439,6 +2615,41 @@ export namespace SubscriptionCreateParams {
2439
2615
  */
2440
2616
  per_unit_maximum?: string | null;
2441
2617
  }
2618
+
2619
+ /**
2620
+ * The subscription's override discount for the plan.
2621
+ */
2622
+ export interface Discount {
2623
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
2624
+
2625
+ /**
2626
+ * Only available if discount_type is `amount`.
2627
+ */
2628
+ amount_discount?: string | null;
2629
+
2630
+ /**
2631
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
2632
+ * this can be a subset of prices.
2633
+ */
2634
+ applies_to_price_ids?: Array<string> | null;
2635
+
2636
+ /**
2637
+ * Only available if discount_type is `percentage`. This is a number between 0
2638
+ * and 1.
2639
+ */
2640
+ percentage_discount?: number | null;
2641
+
2642
+ /**
2643
+ * Only available if discount_type is `trial`
2644
+ */
2645
+ trial_amount_discount?: string | null;
2646
+
2647
+ /**
2648
+ * Only available if discount_type is `usage`. Number of usage units that this
2649
+ * discount is for
2650
+ */
2651
+ usage_discount?: number | null;
2652
+ }
2442
2653
  }
2443
2654
 
2444
2655
  export interface OverrideBulkBpsPrice {
@@ -2451,7 +2662,7 @@ export namespace SubscriptionCreateParams {
2451
2662
  /**
2452
2663
  * The subscription's override discount for the plan.
2453
2664
  */
2454
- discount?: PricesAPI.Discount | null;
2665
+ discount?: OverrideBulkBpsPrice.Discount | null;
2455
2666
 
2456
2667
  /**
2457
2668
  * The starting quantity of the price, if the price is a fixed price.
@@ -2496,6 +2707,41 @@ export namespace SubscriptionCreateParams {
2496
2707
  per_unit_maximum?: string | null;
2497
2708
  }
2498
2709
  }
2710
+
2711
+ /**
2712
+ * The subscription's override discount for the plan.
2713
+ */
2714
+ export interface Discount {
2715
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
2716
+
2717
+ /**
2718
+ * Only available if discount_type is `amount`.
2719
+ */
2720
+ amount_discount?: string | null;
2721
+
2722
+ /**
2723
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
2724
+ * this can be a subset of prices.
2725
+ */
2726
+ applies_to_price_ids?: Array<string> | null;
2727
+
2728
+ /**
2729
+ * Only available if discount_type is `percentage`. This is a number between 0
2730
+ * and 1.
2731
+ */
2732
+ percentage_discount?: number | null;
2733
+
2734
+ /**
2735
+ * Only available if discount_type is `trial`
2736
+ */
2737
+ trial_amount_discount?: string | null;
2738
+
2739
+ /**
2740
+ * Only available if discount_type is `usage`. Number of usage units that this
2741
+ * discount is for
2742
+ */
2743
+ usage_discount?: number | null;
2744
+ }
2499
2745
  }
2500
2746
 
2501
2747
  export interface OverrideBulkPrice {
@@ -2508,7 +2754,7 @@ export namespace SubscriptionCreateParams {
2508
2754
  /**
2509
2755
  * The subscription's override discount for the plan.
2510
2756
  */
2511
- discount?: PricesAPI.Discount | null;
2757
+ discount?: OverrideBulkPrice.Discount | null;
2512
2758
 
2513
2759
  /**
2514
2760
  * The starting quantity of the price, if the price is a fixed price.
@@ -2547,23 +2793,58 @@ export namespace SubscriptionCreateParams {
2547
2793
  maximum_units?: number | null;
2548
2794
  }
2549
2795
  }
2550
- }
2551
-
2552
- export interface OverrideTestRatingFunctionPrice {
2553
- id: string;
2554
-
2555
- model_type: 'test_rating_function';
2556
-
2557
- test_rating_function_config: Record<string, unknown>;
2558
2796
 
2559
2797
  /**
2560
2798
  * The subscription's override discount for the plan.
2561
2799
  */
2562
- discount?: PricesAPI.Discount | null;
2800
+ export interface Discount {
2801
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
2563
2802
 
2564
- /**
2565
- * The starting quantity of the price, if the price is a fixed price.
2566
- */
2803
+ /**
2804
+ * Only available if discount_type is `amount`.
2805
+ */
2806
+ amount_discount?: string | null;
2807
+
2808
+ /**
2809
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
2810
+ * this can be a subset of prices.
2811
+ */
2812
+ applies_to_price_ids?: Array<string> | null;
2813
+
2814
+ /**
2815
+ * Only available if discount_type is `percentage`. This is a number between 0
2816
+ * and 1.
2817
+ */
2818
+ percentage_discount?: number | null;
2819
+
2820
+ /**
2821
+ * Only available if discount_type is `trial`
2822
+ */
2823
+ trial_amount_discount?: string | null;
2824
+
2825
+ /**
2826
+ * Only available if discount_type is `usage`. Number of usage units that this
2827
+ * discount is for
2828
+ */
2829
+ usage_discount?: number | null;
2830
+ }
2831
+ }
2832
+
2833
+ export interface OverrideTestRatingFunctionPrice {
2834
+ id: string;
2835
+
2836
+ model_type: 'test_rating_function';
2837
+
2838
+ test_rating_function_config: Record<string, unknown>;
2839
+
2840
+ /**
2841
+ * The subscription's override discount for the plan.
2842
+ */
2843
+ discount?: OverrideTestRatingFunctionPrice.Discount | null;
2844
+
2845
+ /**
2846
+ * The starting quantity of the price, if the price is a fixed price.
2847
+ */
2567
2848
  fixed_price_quantity?: number | null;
2568
2849
 
2569
2850
  /**
@@ -2577,6 +2858,43 @@ export namespace SubscriptionCreateParams {
2577
2858
  minimum_amount?: string | null;
2578
2859
  }
2579
2860
 
2861
+ export namespace OverrideTestRatingFunctionPrice {
2862
+ /**
2863
+ * The subscription's override discount for the plan.
2864
+ */
2865
+ export interface Discount {
2866
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
2867
+
2868
+ /**
2869
+ * Only available if discount_type is `amount`.
2870
+ */
2871
+ amount_discount?: string | null;
2872
+
2873
+ /**
2874
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
2875
+ * this can be a subset of prices.
2876
+ */
2877
+ applies_to_price_ids?: Array<string> | null;
2878
+
2879
+ /**
2880
+ * Only available if discount_type is `percentage`. This is a number between 0
2881
+ * and 1.
2882
+ */
2883
+ percentage_discount?: number | null;
2884
+
2885
+ /**
2886
+ * Only available if discount_type is `trial`
2887
+ */
2888
+ trial_amount_discount?: string | null;
2889
+
2890
+ /**
2891
+ * Only available if discount_type is `usage`. Number of usage units that this
2892
+ * discount is for
2893
+ */
2894
+ usage_discount?: number | null;
2895
+ }
2896
+ }
2897
+
2580
2898
  export interface OverrideFivetranExamplePrice {
2581
2899
  id: string;
2582
2900
 
@@ -2587,7 +2905,7 @@ export namespace SubscriptionCreateParams {
2587
2905
  /**
2588
2906
  * The subscription's override discount for the plan.
2589
2907
  */
2590
- discount?: PricesAPI.Discount | null;
2908
+ discount?: OverrideFivetranExamplePrice.Discount | null;
2591
2909
 
2592
2910
  /**
2593
2911
  * The starting quantity of the price, if the price is a fixed price.
@@ -2605,6 +2923,43 @@ export namespace SubscriptionCreateParams {
2605
2923
  minimum_amount?: string | null;
2606
2924
  }
2607
2925
 
2926
+ export namespace OverrideFivetranExamplePrice {
2927
+ /**
2928
+ * The subscription's override discount for the plan.
2929
+ */
2930
+ export interface Discount {
2931
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
2932
+
2933
+ /**
2934
+ * Only available if discount_type is `amount`.
2935
+ */
2936
+ amount_discount?: string | null;
2937
+
2938
+ /**
2939
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
2940
+ * this can be a subset of prices.
2941
+ */
2942
+ applies_to_price_ids?: Array<string> | null;
2943
+
2944
+ /**
2945
+ * Only available if discount_type is `percentage`. This is a number between 0
2946
+ * and 1.
2947
+ */
2948
+ percentage_discount?: number | null;
2949
+
2950
+ /**
2951
+ * Only available if discount_type is `trial`
2952
+ */
2953
+ trial_amount_discount?: string | null;
2954
+
2955
+ /**
2956
+ * Only available if discount_type is `usage`. Number of usage units that this
2957
+ * discount is for
2958
+ */
2959
+ usage_discount?: number | null;
2960
+ }
2961
+ }
2962
+
2608
2963
  export interface OverrideThresholdTotalAmountPrice {
2609
2964
  id: string;
2610
2965
 
@@ -2615,7 +2970,7 @@ export namespace SubscriptionCreateParams {
2615
2970
  /**
2616
2971
  * The subscription's override discount for the plan.
2617
2972
  */
2618
- discount?: PricesAPI.Discount | null;
2973
+ discount?: OverrideThresholdTotalAmountPrice.Discount | null;
2619
2974
 
2620
2975
  /**
2621
2976
  * The starting quantity of the price, if the price is a fixed price.
@@ -2633,6 +2988,43 @@ export namespace SubscriptionCreateParams {
2633
2988
  minimum_amount?: string | null;
2634
2989
  }
2635
2990
 
2991
+ export namespace OverrideThresholdTotalAmountPrice {
2992
+ /**
2993
+ * The subscription's override discount for the plan.
2994
+ */
2995
+ export interface Discount {
2996
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
2997
+
2998
+ /**
2999
+ * Only available if discount_type is `amount`.
3000
+ */
3001
+ amount_discount?: string | null;
3002
+
3003
+ /**
3004
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
3005
+ * this can be a subset of prices.
3006
+ */
3007
+ applies_to_price_ids?: Array<string> | null;
3008
+
3009
+ /**
3010
+ * Only available if discount_type is `percentage`. This is a number between 0
3011
+ * and 1.
3012
+ */
3013
+ percentage_discount?: number | null;
3014
+
3015
+ /**
3016
+ * Only available if discount_type is `trial`
3017
+ */
3018
+ trial_amount_discount?: string | null;
3019
+
3020
+ /**
3021
+ * Only available if discount_type is `usage`. Number of usage units that this
3022
+ * discount is for
3023
+ */
3024
+ usage_discount?: number | null;
3025
+ }
3026
+ }
3027
+
2636
3028
  export interface OverrideTieredPackagePrice {
2637
3029
  id: string;
2638
3030
 
@@ -2643,7 +3035,7 @@ export namespace SubscriptionCreateParams {
2643
3035
  /**
2644
3036
  * The subscription's override discount for the plan.
2645
3037
  */
2646
- discount?: PricesAPI.Discount | null;
3038
+ discount?: OverrideTieredPackagePrice.Discount | null;
2647
3039
 
2648
3040
  /**
2649
3041
  * The starting quantity of the price, if the price is a fixed price.
@@ -2661,6 +3053,43 @@ export namespace SubscriptionCreateParams {
2661
3053
  minimum_amount?: string | null;
2662
3054
  }
2663
3055
 
3056
+ export namespace OverrideTieredPackagePrice {
3057
+ /**
3058
+ * The subscription's override discount for the plan.
3059
+ */
3060
+ export interface Discount {
3061
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
3062
+
3063
+ /**
3064
+ * Only available if discount_type is `amount`.
3065
+ */
3066
+ amount_discount?: string | null;
3067
+
3068
+ /**
3069
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
3070
+ * this can be a subset of prices.
3071
+ */
3072
+ applies_to_price_ids?: Array<string> | null;
3073
+
3074
+ /**
3075
+ * Only available if discount_type is `percentage`. This is a number between 0
3076
+ * and 1.
3077
+ */
3078
+ percentage_discount?: number | null;
3079
+
3080
+ /**
3081
+ * Only available if discount_type is `trial`
3082
+ */
3083
+ trial_amount_discount?: string | null;
3084
+
3085
+ /**
3086
+ * Only available if discount_type is `usage`. Number of usage units that this
3087
+ * discount is for
3088
+ */
3089
+ usage_discount?: number | null;
3090
+ }
3091
+ }
3092
+
2664
3093
  export interface OverrideTieredWithMinimumPrice {
2665
3094
  id: string;
2666
3095
 
@@ -2671,7 +3100,7 @@ export namespace SubscriptionCreateParams {
2671
3100
  /**
2672
3101
  * The subscription's override discount for the plan.
2673
3102
  */
2674
- discount?: PricesAPI.Discount | null;
3103
+ discount?: OverrideTieredWithMinimumPrice.Discount | null;
2675
3104
 
2676
3105
  /**
2677
3106
  * The starting quantity of the price, if the price is a fixed price.
@@ -2689,6 +3118,43 @@ export namespace SubscriptionCreateParams {
2689
3118
  minimum_amount?: string | null;
2690
3119
  }
2691
3120
 
3121
+ export namespace OverrideTieredWithMinimumPrice {
3122
+ /**
3123
+ * The subscription's override discount for the plan.
3124
+ */
3125
+ export interface Discount {
3126
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
3127
+
3128
+ /**
3129
+ * Only available if discount_type is `amount`.
3130
+ */
3131
+ amount_discount?: string | null;
3132
+
3133
+ /**
3134
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
3135
+ * this can be a subset of prices.
3136
+ */
3137
+ applies_to_price_ids?: Array<string> | null;
3138
+
3139
+ /**
3140
+ * Only available if discount_type is `percentage`. This is a number between 0
3141
+ * and 1.
3142
+ */
3143
+ percentage_discount?: number | null;
3144
+
3145
+ /**
3146
+ * Only available if discount_type is `trial`
3147
+ */
3148
+ trial_amount_discount?: string | null;
3149
+
3150
+ /**
3151
+ * Only available if discount_type is `usage`. Number of usage units that this
3152
+ * discount is for
3153
+ */
3154
+ usage_discount?: number | null;
3155
+ }
3156
+ }
3157
+
2692
3158
  export interface OverridePackageWithAllocationPrice {
2693
3159
  id: string;
2694
3160
 
@@ -2699,7 +3165,7 @@ export namespace SubscriptionCreateParams {
2699
3165
  /**
2700
3166
  * The subscription's override discount for the plan.
2701
3167
  */
2702
- discount?: PricesAPI.Discount | null;
3168
+ discount?: OverridePackageWithAllocationPrice.Discount | null;
2703
3169
 
2704
3170
  /**
2705
3171
  * The starting quantity of the price, if the price is a fixed price.
@@ -2716,6 +3182,43 @@ export namespace SubscriptionCreateParams {
2716
3182
  */
2717
3183
  minimum_amount?: string | null;
2718
3184
  }
3185
+
3186
+ export namespace OverridePackageWithAllocationPrice {
3187
+ /**
3188
+ * The subscription's override discount for the plan.
3189
+ */
3190
+ export interface Discount {
3191
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
3192
+
3193
+ /**
3194
+ * Only available if discount_type is `amount`.
3195
+ */
3196
+ amount_discount?: string | null;
3197
+
3198
+ /**
3199
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
3200
+ * this can be a subset of prices.
3201
+ */
3202
+ applies_to_price_ids?: Array<string> | null;
3203
+
3204
+ /**
3205
+ * Only available if discount_type is `percentage`. This is a number between 0
3206
+ * and 1.
3207
+ */
3208
+ percentage_discount?: number | null;
3209
+
3210
+ /**
3211
+ * Only available if discount_type is `trial`
3212
+ */
3213
+ trial_amount_discount?: string | null;
3214
+
3215
+ /**
3216
+ * Only available if discount_type is `usage`. Number of usage units that this
3217
+ * discount is for
3218
+ */
3219
+ usage_discount?: number | null;
3220
+ }
3221
+ }
2719
3222
  }
2720
3223
 
2721
3224
  export interface SubscriptionListParams extends PageParams {
@@ -2900,18 +3403,18 @@ export namespace SubscriptionPriceIntervalsParams {
2900
3403
  * The definition of a new price to create and add to the subscription.
2901
3404
  */
2902
3405
  price?:
2903
- | Add.NewUnitPrice
2904
- | Add.NewPackagePrice
2905
- | Add.NewMatrixPrice
2906
- | Add.NewTieredPrice
2907
- | Add.NewTieredBpsPrice
2908
- | Add.NewBpsPrice
2909
- | Add.NewBulkBpsPrice
2910
- | Add.NewBulkPrice
2911
- | Add.NewThresholdTotalAmountPrice
2912
- | Add.NewTieredPackagePrice
2913
- | Add.NewTieredWithMinimumPrice
2914
- | Add.NewPackageWithAllocationPrice
3406
+ | Add.NewFloatingUnitPrice
3407
+ | Add.NewFloatingPackagePrice
3408
+ | Add.NewFloatingMatrixPrice
3409
+ | Add.NewFloatingTieredPrice
3410
+ | Add.NewFloatingTieredBpsPrice
3411
+ | Add.NewFloatingBpsPrice
3412
+ | Add.NewFloatingBulkBpsPrice
3413
+ | Add.NewFloatingBulkPrice
3414
+ | Add.NewFloatingThresholdTotalAmountPrice
3415
+ | Add.NewFloatingTieredPackagePrice
3416
+ | Add.NewFloatingTieredWithMinimumPrice
3417
+ | Add.NewFloatingPackageWithAllocationPrice
2915
3418
  | null;
2916
3419
 
2917
3420
  /**
@@ -2962,11 +3465,11 @@ export namespace SubscriptionPriceIntervalsParams {
2962
3465
  quantity: number;
2963
3466
  }
2964
3467
 
2965
- export interface NewUnitPrice {
3468
+ export interface NewFloatingUnitPrice {
2966
3469
  /**
2967
3470
  * The cadence to bill for this price on.
2968
3471
  */
2969
- cadence: 'annual' | 'monthly' | 'quarterly';
3472
+ cadence: 'annual' | 'monthly' | 'quarterly' | 'one_time';
2970
3473
 
2971
3474
  /**
2972
3475
  * An ISO 4217 currency string for which this price is billed in.
@@ -2985,7 +3488,7 @@ export namespace SubscriptionPriceIntervalsParams {
2985
3488
  */
2986
3489
  name: string;
2987
3490
 
2988
- unit_config: NewUnitPrice.UnitConfig;
3491
+ unit_config: NewFloatingUnitPrice.UnitConfig;
2989
3492
 
2990
3493
  /**
2991
3494
  * The id of the billable metric for the price. Only needed if the price is
@@ -3016,7 +3519,7 @@ export namespace SubscriptionPriceIntervalsParams {
3016
3519
  invoice_grouping_key?: string | null;
3017
3520
  }
3018
3521
 
3019
- export namespace NewUnitPrice {
3522
+ export namespace NewFloatingUnitPrice {
3020
3523
  export interface UnitConfig {
3021
3524
  /**
3022
3525
  * Rate per unit of usage
@@ -3030,11 +3533,11 @@ export namespace SubscriptionPriceIntervalsParams {
3030
3533
  }
3031
3534
  }
3032
3535
 
3033
- export interface NewPackagePrice {
3536
+ export interface NewFloatingPackagePrice {
3034
3537
  /**
3035
3538
  * The cadence to bill for this price on.
3036
3539
  */
3037
- cadence: 'annual' | 'monthly' | 'quarterly';
3540
+ cadence: 'annual' | 'monthly' | 'quarterly' | 'one_time';
3038
3541
 
3039
3542
  /**
3040
3543
  * An ISO 4217 currency string for which this price is billed in.
@@ -3053,7 +3556,7 @@ export namespace SubscriptionPriceIntervalsParams {
3053
3556
  */
3054
3557
  name: string;
3055
3558
 
3056
- package_config: NewPackagePrice.PackageConfig;
3559
+ package_config: NewFloatingPackagePrice.PackageConfig;
3057
3560
 
3058
3561
  /**
3059
3562
  * The id of the billable metric for the price. Only needed if the price is
@@ -3084,7 +3587,7 @@ export namespace SubscriptionPriceIntervalsParams {
3084
3587
  invoice_grouping_key?: string | null;
3085
3588
  }
3086
3589
 
3087
- export namespace NewPackagePrice {
3590
+ export namespace NewFloatingPackagePrice {
3088
3591
  export interface PackageConfig {
3089
3592
  /**
3090
3593
  * A currency amount to rate usage by
@@ -3099,11 +3602,11 @@ export namespace SubscriptionPriceIntervalsParams {
3099
3602
  }
3100
3603
  }
3101
3604
 
3102
- export interface NewMatrixPrice {
3605
+ export interface NewFloatingMatrixPrice {
3103
3606
  /**
3104
3607
  * The cadence to bill for this price on.
3105
3608
  */
3106
- cadence: 'annual' | 'monthly' | 'quarterly';
3609
+ cadence: 'annual' | 'monthly' | 'quarterly' | 'one_time';
3107
3610
 
3108
3611
  /**
3109
3612
  * An ISO 4217 currency string for which this price is billed in.
@@ -3115,7 +3618,7 @@ export namespace SubscriptionPriceIntervalsParams {
3115
3618
  */
3116
3619
  item_id: string;
3117
3620
 
3118
- matrix_config: NewMatrixPrice.MatrixConfig;
3621
+ matrix_config: NewFloatingMatrixPrice.MatrixConfig;
3119
3622
 
3120
3623
  model_type: 'matrix';
3121
3624
 
@@ -3153,7 +3656,7 @@ export namespace SubscriptionPriceIntervalsParams {
3153
3656
  invoice_grouping_key?: string | null;
3154
3657
  }
3155
3658
 
3156
- export namespace NewMatrixPrice {
3659
+ export namespace NewFloatingMatrixPrice {
3157
3660
  export interface MatrixConfig {
3158
3661
  /**
3159
3662
  * Default per unit rate for any usage not bucketed into a specified matrix_value
@@ -3199,11 +3702,11 @@ export namespace SubscriptionPriceIntervalsParams {
3199
3702
  }
3200
3703
  }
3201
3704
 
3202
- export interface NewTieredPrice {
3705
+ export interface NewFloatingTieredPrice {
3203
3706
  /**
3204
3707
  * The cadence to bill for this price on.
3205
3708
  */
3206
- cadence: 'annual' | 'monthly' | 'quarterly';
3709
+ cadence: 'annual' | 'monthly' | 'quarterly' | 'one_time';
3207
3710
 
3208
3711
  /**
3209
3712
  * An ISO 4217 currency string for which this price is billed in.
@@ -3222,7 +3725,7 @@ export namespace SubscriptionPriceIntervalsParams {
3222
3725
  */
3223
3726
  name: string;
3224
3727
 
3225
- tiered_config: NewTieredPrice.TieredConfig;
3728
+ tiered_config: NewFloatingTieredPrice.TieredConfig;
3226
3729
 
3227
3730
  /**
3228
3731
  * The id of the billable metric for the price. Only needed if the price is
@@ -3253,7 +3756,7 @@ export namespace SubscriptionPriceIntervalsParams {
3253
3756
  invoice_grouping_key?: string | null;
3254
3757
  }
3255
3758
 
3256
- export namespace NewTieredPrice {
3759
+ export namespace NewFloatingTieredPrice {
3257
3760
  export interface TieredConfig {
3258
3761
  /**
3259
3762
  * Tiers for rating based on total usage quantities into the specified tier
@@ -3281,11 +3784,11 @@ export namespace SubscriptionPriceIntervalsParams {
3281
3784
  }
3282
3785
  }
3283
3786
 
3284
- export interface NewTieredBpsPrice {
3787
+ export interface NewFloatingTieredBpsPrice {
3285
3788
  /**
3286
3789
  * The cadence to bill for this price on.
3287
3790
  */
3288
- cadence: 'annual' | 'monthly' | 'quarterly';
3791
+ cadence: 'annual' | 'monthly' | 'quarterly' | 'one_time';
3289
3792
 
3290
3793
  /**
3291
3794
  * An ISO 4217 currency string for which this price is billed in.
@@ -3304,7 +3807,7 @@ export namespace SubscriptionPriceIntervalsParams {
3304
3807
  */
3305
3808
  name: string;
3306
3809
 
3307
- tiered_bps_config: NewTieredBpsPrice.TieredBpsConfig;
3810
+ tiered_bps_config: NewFloatingTieredBpsPrice.TieredBpsConfig;
3308
3811
 
3309
3812
  /**
3310
3813
  * The id of the billable metric for the price. Only needed if the price is
@@ -3335,7 +3838,7 @@ export namespace SubscriptionPriceIntervalsParams {
3335
3838
  invoice_grouping_key?: string | null;
3336
3839
  }
3337
3840
 
3338
- export namespace NewTieredBpsPrice {
3841
+ export namespace NewFloatingTieredBpsPrice {
3339
3842
  export interface TieredBpsConfig {
3340
3843
  /**
3341
3844
  * Tiers for a Graduated BPS pricing model, where usage is bucketed into specified
@@ -3369,13 +3872,13 @@ export namespace SubscriptionPriceIntervalsParams {
3369
3872
  }
3370
3873
  }
3371
3874
 
3372
- export interface NewBpsPrice {
3373
- bps_config: NewBpsPrice.BpsConfig;
3875
+ export interface NewFloatingBpsPrice {
3876
+ bps_config: NewFloatingBpsPrice.BpsConfig;
3374
3877
 
3375
3878
  /**
3376
3879
  * The cadence to bill for this price on.
3377
3880
  */
3378
- cadence: 'annual' | 'monthly' | 'quarterly';
3881
+ cadence: 'annual' | 'monthly' | 'quarterly' | 'one_time';
3379
3882
 
3380
3883
  /**
3381
3884
  * An ISO 4217 currency string for which this price is billed in.
@@ -3423,7 +3926,7 @@ export namespace SubscriptionPriceIntervalsParams {
3423
3926
  invoice_grouping_key?: string | null;
3424
3927
  }
3425
3928
 
3426
- export namespace NewBpsPrice {
3929
+ export namespace NewFloatingBpsPrice {
3427
3930
  export interface BpsConfig {
3428
3931
  /**
3429
3932
  * Basis point take rate per event
@@ -3437,13 +3940,13 @@ export namespace SubscriptionPriceIntervalsParams {
3437
3940
  }
3438
3941
  }
3439
3942
 
3440
- export interface NewBulkBpsPrice {
3441
- bulk_bps_config: NewBulkBpsPrice.BulkBpsConfig;
3943
+ export interface NewFloatingBulkBpsPrice {
3944
+ bulk_bps_config: NewFloatingBulkBpsPrice.BulkBpsConfig;
3442
3945
 
3443
3946
  /**
3444
3947
  * The cadence to bill for this price on.
3445
3948
  */
3446
- cadence: 'annual' | 'monthly' | 'quarterly';
3949
+ cadence: 'annual' | 'monthly' | 'quarterly' | 'one_time';
3447
3950
 
3448
3951
  /**
3449
3952
  * An ISO 4217 currency string for which this price is billed in.
@@ -3491,7 +3994,7 @@ export namespace SubscriptionPriceIntervalsParams {
3491
3994
  invoice_grouping_key?: string | null;
3492
3995
  }
3493
3996
 
3494
- export namespace NewBulkBpsPrice {
3997
+ export namespace NewFloatingBulkBpsPrice {
3495
3998
  export interface BulkBpsConfig {
3496
3999
  /**
3497
4000
  * Tiers for a bulk BPS pricing model where all usage is aggregated to a single
@@ -3520,13 +4023,13 @@ export namespace SubscriptionPriceIntervalsParams {
3520
4023
  }
3521
4024
  }
3522
4025
 
3523
- export interface NewBulkPrice {
3524
- bulk_config: NewBulkPrice.BulkConfig;
4026
+ export interface NewFloatingBulkPrice {
4027
+ bulk_config: NewFloatingBulkPrice.BulkConfig;
3525
4028
 
3526
4029
  /**
3527
4030
  * The cadence to bill for this price on.
3528
4031
  */
3529
- cadence: 'annual' | 'monthly' | 'quarterly';
4032
+ cadence: 'annual' | 'monthly' | 'quarterly' | 'one_time';
3530
4033
 
3531
4034
  /**
3532
4035
  * An ISO 4217 currency string for which this price is billed in.
@@ -3574,7 +4077,7 @@ export namespace SubscriptionPriceIntervalsParams {
3574
4077
  invoice_grouping_key?: string | null;
3575
4078
  }
3576
4079
 
3577
- export namespace NewBulkPrice {
4080
+ export namespace NewFloatingBulkPrice {
3578
4081
  export interface BulkConfig {
3579
4082
  /**
3580
4083
  * Bulk tiers for rating based on total usage volume
@@ -3597,11 +4100,11 @@ export namespace SubscriptionPriceIntervalsParams {
3597
4100
  }
3598
4101
  }
3599
4102
 
3600
- export interface NewThresholdTotalAmountPrice {
4103
+ export interface NewFloatingThresholdTotalAmountPrice {
3601
4104
  /**
3602
4105
  * The cadence to bill for this price on.
3603
4106
  */
3604
- cadence: 'annual' | 'monthly' | 'quarterly';
4107
+ cadence: 'annual' | 'monthly' | 'quarterly' | 'one_time';
3605
4108
 
3606
4109
  /**
3607
4110
  * An ISO 4217 currency string for which this price is billed in.
@@ -3651,11 +4154,11 @@ export namespace SubscriptionPriceIntervalsParams {
3651
4154
  invoice_grouping_key?: string | null;
3652
4155
  }
3653
4156
 
3654
- export interface NewTieredPackagePrice {
4157
+ export interface NewFloatingTieredPackagePrice {
3655
4158
  /**
3656
4159
  * The cadence to bill for this price on.
3657
4160
  */
3658
- cadence: 'annual' | 'monthly' | 'quarterly';
4161
+ cadence: 'annual' | 'monthly' | 'quarterly' | 'one_time';
3659
4162
 
3660
4163
  /**
3661
4164
  * An ISO 4217 currency string for which this price is billed in.
@@ -3705,11 +4208,11 @@ export namespace SubscriptionPriceIntervalsParams {
3705
4208
  invoice_grouping_key?: string | null;
3706
4209
  }
3707
4210
 
3708
- export interface NewTieredWithMinimumPrice {
4211
+ export interface NewFloatingTieredWithMinimumPrice {
3709
4212
  /**
3710
4213
  * The cadence to bill for this price on.
3711
4214
  */
3712
- cadence: 'annual' | 'monthly' | 'quarterly';
4215
+ cadence: 'annual' | 'monthly' | 'quarterly' | 'one_time';
3713
4216
 
3714
4217
  /**
3715
4218
  * An ISO 4217 currency string for which this price is billed in.
@@ -3759,11 +4262,11 @@ export namespace SubscriptionPriceIntervalsParams {
3759
4262
  invoice_grouping_key?: string | null;
3760
4263
  }
3761
4264
 
3762
- export interface NewPackageWithAllocationPrice {
4265
+ export interface NewFloatingPackageWithAllocationPrice {
3763
4266
  /**
3764
4267
  * The cadence to bill for this price on.
3765
4268
  */
3766
- cadence: 'annual' | 'monthly' | 'quarterly';
4269
+ cadence: 'annual' | 'monthly' | 'quarterly' | 'one_time';
3767
4270
 
3768
4271
  /**
3769
4272
  * An ISO 4217 currency string for which this price is billed in.
@@ -3820,6 +4323,13 @@ export namespace SubscriptionPriceIntervalsParams {
3820
4323
  */
3821
4324
  price_interval_id: string;
3822
4325
 
4326
+ /**
4327
+ * The updated billing cycle day for this price interval. If not specified, the
4328
+ * billing cycle day will not be updated. Note that overlapping price intervals
4329
+ * must have the same billing cycle day.
4330
+ */
4331
+ billing_cycle_day?: number | null;
4332
+
3823
4333
  /**
3824
4334
  * The updated end date of this price interval. If not specified, the start date
3825
4335
  * will not be updated.
@@ -3837,7 +4347,7 @@ export namespace SubscriptionPriceIntervalsParams {
3837
4347
  * The updated start date of this price interval. If not specified, the start date
3838
4348
  * will not be updated.
3839
4349
  */
3840
- start_date?: (string & {}) | 'start_of_term' | 'end_of_term' | null;
4350
+ start_date?: (string & {}) | 'start_of_term' | 'end_of_term';
3841
4351
  }
3842
4352
 
3843
4353
  export namespace Edit {
@@ -3944,7 +4454,7 @@ export namespace SubscriptionSchedulePlanChangeParams {
3944
4454
  /**
3945
4455
  * The subscription's override discount for the plan.
3946
4456
  */
3947
- discount?: PricesAPI.Discount | null;
4457
+ discount?: OverrideUnitPrice.Discount | null;
3948
4458
 
3949
4459
  /**
3950
4460
  * The starting quantity of the price, if the price is a fixed price.
@@ -3974,6 +4484,41 @@ export namespace SubscriptionSchedulePlanChangeParams {
3974
4484
  */
3975
4485
  scaling_factor?: number | null;
3976
4486
  }
4487
+
4488
+ /**
4489
+ * The subscription's override discount for the plan.
4490
+ */
4491
+ export interface Discount {
4492
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
4493
+
4494
+ /**
4495
+ * Only available if discount_type is `amount`.
4496
+ */
4497
+ amount_discount?: string | null;
4498
+
4499
+ /**
4500
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
4501
+ * this can be a subset of prices.
4502
+ */
4503
+ applies_to_price_ids?: Array<string> | null;
4504
+
4505
+ /**
4506
+ * Only available if discount_type is `percentage`. This is a number between 0
4507
+ * and 1.
4508
+ */
4509
+ percentage_discount?: number | null;
4510
+
4511
+ /**
4512
+ * Only available if discount_type is `trial`
4513
+ */
4514
+ trial_amount_discount?: string | null;
4515
+
4516
+ /**
4517
+ * Only available if discount_type is `usage`. Number of usage units that this
4518
+ * discount is for
4519
+ */
4520
+ usage_discount?: number | null;
4521
+ }
3977
4522
  }
3978
4523
 
3979
4524
  export interface OverridePackagePrice {
@@ -3986,7 +4531,7 @@ export namespace SubscriptionSchedulePlanChangeParams {
3986
4531
  /**
3987
4532
  * The subscription's override discount for the plan.
3988
4533
  */
3989
- discount?: PricesAPI.Discount | null;
4534
+ discount?: OverridePackagePrice.Discount | null;
3990
4535
 
3991
4536
  /**
3992
4537
  * The starting quantity of the price, if the price is a fixed price.
@@ -4017,6 +4562,41 @@ export namespace SubscriptionSchedulePlanChangeParams {
4017
4562
  */
4018
4563
  package_size?: number | null;
4019
4564
  }
4565
+
4566
+ /**
4567
+ * The subscription's override discount for the plan.
4568
+ */
4569
+ export interface Discount {
4570
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
4571
+
4572
+ /**
4573
+ * Only available if discount_type is `amount`.
4574
+ */
4575
+ amount_discount?: string | null;
4576
+
4577
+ /**
4578
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
4579
+ * this can be a subset of prices.
4580
+ */
4581
+ applies_to_price_ids?: Array<string> | null;
4582
+
4583
+ /**
4584
+ * Only available if discount_type is `percentage`. This is a number between 0
4585
+ * and 1.
4586
+ */
4587
+ percentage_discount?: number | null;
4588
+
4589
+ /**
4590
+ * Only available if discount_type is `trial`
4591
+ */
4592
+ trial_amount_discount?: string | null;
4593
+
4594
+ /**
4595
+ * Only available if discount_type is `usage`. Number of usage units that this
4596
+ * discount is for
4597
+ */
4598
+ usage_discount?: number | null;
4599
+ }
4020
4600
  }
4021
4601
 
4022
4602
  export interface OverrideMatrixPrice {
@@ -4029,7 +4609,7 @@ export namespace SubscriptionSchedulePlanChangeParams {
4029
4609
  /**
4030
4610
  * The subscription's override discount for the plan.
4031
4611
  */
4032
- discount?: PricesAPI.Discount | null;
4612
+ discount?: OverrideMatrixPrice.Discount | null;
4033
4613
 
4034
4614
  /**
4035
4615
  * The starting quantity of the price, if the price is a fixed price.
@@ -4091,29 +4671,64 @@ export namespace SubscriptionSchedulePlanChangeParams {
4091
4671
  scaling_factor?: number | null;
4092
4672
  }
4093
4673
  }
4094
- }
4095
-
4096
- export interface OverrideTieredPrice {
4097
- id: string;
4098
-
4099
- model_type: 'tiered';
4100
-
4101
- tiered_config: OverrideTieredPrice.TieredConfig;
4102
4674
 
4103
4675
  /**
4104
4676
  * The subscription's override discount for the plan.
4105
4677
  */
4106
- discount?: PricesAPI.Discount | null;
4107
-
4108
- /**
4109
- * The starting quantity of the price, if the price is a fixed price.
4110
- */
4111
- fixed_price_quantity?: number | null;
4678
+ export interface Discount {
4679
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
4112
4680
 
4113
- /**
4114
- * The subscription's override maximum amount for the plan.
4115
- */
4116
- maximum_amount?: string | null;
4681
+ /**
4682
+ * Only available if discount_type is `amount`.
4683
+ */
4684
+ amount_discount?: string | null;
4685
+
4686
+ /**
4687
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
4688
+ * this can be a subset of prices.
4689
+ */
4690
+ applies_to_price_ids?: Array<string> | null;
4691
+
4692
+ /**
4693
+ * Only available if discount_type is `percentage`. This is a number between 0
4694
+ * and 1.
4695
+ */
4696
+ percentage_discount?: number | null;
4697
+
4698
+ /**
4699
+ * Only available if discount_type is `trial`
4700
+ */
4701
+ trial_amount_discount?: string | null;
4702
+
4703
+ /**
4704
+ * Only available if discount_type is `usage`. Number of usage units that this
4705
+ * discount is for
4706
+ */
4707
+ usage_discount?: number | null;
4708
+ }
4709
+ }
4710
+
4711
+ export interface OverrideTieredPrice {
4712
+ id: string;
4713
+
4714
+ model_type: 'tiered';
4715
+
4716
+ tiered_config: OverrideTieredPrice.TieredConfig;
4717
+
4718
+ /**
4719
+ * The subscription's override discount for the plan.
4720
+ */
4721
+ discount?: OverrideTieredPrice.Discount | null;
4722
+
4723
+ /**
4724
+ * The starting quantity of the price, if the price is a fixed price.
4725
+ */
4726
+ fixed_price_quantity?: number | null;
4727
+
4728
+ /**
4729
+ * The subscription's override maximum amount for the plan.
4730
+ */
4731
+ maximum_amount?: string | null;
4117
4732
 
4118
4733
  /**
4119
4734
  * The subscription's override minimum amount for the plan.
@@ -4147,6 +4762,41 @@ export namespace SubscriptionSchedulePlanChangeParams {
4147
4762
  last_unit?: number | null;
4148
4763
  }
4149
4764
  }
4765
+
4766
+ /**
4767
+ * The subscription's override discount for the plan.
4768
+ */
4769
+ export interface Discount {
4770
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
4771
+
4772
+ /**
4773
+ * Only available if discount_type is `amount`.
4774
+ */
4775
+ amount_discount?: string | null;
4776
+
4777
+ /**
4778
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
4779
+ * this can be a subset of prices.
4780
+ */
4781
+ applies_to_price_ids?: Array<string> | null;
4782
+
4783
+ /**
4784
+ * Only available if discount_type is `percentage`. This is a number between 0
4785
+ * and 1.
4786
+ */
4787
+ percentage_discount?: number | null;
4788
+
4789
+ /**
4790
+ * Only available if discount_type is `trial`
4791
+ */
4792
+ trial_amount_discount?: string | null;
4793
+
4794
+ /**
4795
+ * Only available if discount_type is `usage`. Number of usage units that this
4796
+ * discount is for
4797
+ */
4798
+ usage_discount?: number | null;
4799
+ }
4150
4800
  }
4151
4801
 
4152
4802
  export interface OverrideTieredBpsPrice {
@@ -4159,7 +4809,7 @@ export namespace SubscriptionSchedulePlanChangeParams {
4159
4809
  /**
4160
4810
  * The subscription's override discount for the plan.
4161
4811
  */
4162
- discount?: PricesAPI.Discount | null;
4812
+ discount?: OverrideTieredBpsPrice.Discount | null;
4163
4813
 
4164
4814
  /**
4165
4815
  * The starting quantity of the price, if the price is a fixed price.
@@ -4209,6 +4859,41 @@ export namespace SubscriptionSchedulePlanChangeParams {
4209
4859
  per_unit_maximum?: string | null;
4210
4860
  }
4211
4861
  }
4862
+
4863
+ /**
4864
+ * The subscription's override discount for the plan.
4865
+ */
4866
+ export interface Discount {
4867
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
4868
+
4869
+ /**
4870
+ * Only available if discount_type is `amount`.
4871
+ */
4872
+ amount_discount?: string | null;
4873
+
4874
+ /**
4875
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
4876
+ * this can be a subset of prices.
4877
+ */
4878
+ applies_to_price_ids?: Array<string> | null;
4879
+
4880
+ /**
4881
+ * Only available if discount_type is `percentage`. This is a number between 0
4882
+ * and 1.
4883
+ */
4884
+ percentage_discount?: number | null;
4885
+
4886
+ /**
4887
+ * Only available if discount_type is `trial`
4888
+ */
4889
+ trial_amount_discount?: string | null;
4890
+
4891
+ /**
4892
+ * Only available if discount_type is `usage`. Number of usage units that this
4893
+ * discount is for
4894
+ */
4895
+ usage_discount?: number | null;
4896
+ }
4212
4897
  }
4213
4898
 
4214
4899
  export interface OverrideBpsPrice {
@@ -4221,7 +4906,7 @@ export namespace SubscriptionSchedulePlanChangeParams {
4221
4906
  /**
4222
4907
  * The subscription's override discount for the plan.
4223
4908
  */
4224
- discount?: PricesAPI.Discount | null;
4909
+ discount?: OverrideBpsPrice.Discount | null;
4225
4910
 
4226
4911
  /**
4227
4912
  * The starting quantity of the price, if the price is a fixed price.
@@ -4251,6 +4936,41 @@ export namespace SubscriptionSchedulePlanChangeParams {
4251
4936
  */
4252
4937
  per_unit_maximum?: string | null;
4253
4938
  }
4939
+
4940
+ /**
4941
+ * The subscription's override discount for the plan.
4942
+ */
4943
+ export interface Discount {
4944
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
4945
+
4946
+ /**
4947
+ * Only available if discount_type is `amount`.
4948
+ */
4949
+ amount_discount?: string | null;
4950
+
4951
+ /**
4952
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
4953
+ * this can be a subset of prices.
4954
+ */
4955
+ applies_to_price_ids?: Array<string> | null;
4956
+
4957
+ /**
4958
+ * Only available if discount_type is `percentage`. This is a number between 0
4959
+ * and 1.
4960
+ */
4961
+ percentage_discount?: number | null;
4962
+
4963
+ /**
4964
+ * Only available if discount_type is `trial`
4965
+ */
4966
+ trial_amount_discount?: string | null;
4967
+
4968
+ /**
4969
+ * Only available if discount_type is `usage`. Number of usage units that this
4970
+ * discount is for
4971
+ */
4972
+ usage_discount?: number | null;
4973
+ }
4254
4974
  }
4255
4975
 
4256
4976
  export interface OverrideBulkBpsPrice {
@@ -4263,7 +4983,7 @@ export namespace SubscriptionSchedulePlanChangeParams {
4263
4983
  /**
4264
4984
  * The subscription's override discount for the plan.
4265
4985
  */
4266
- discount?: PricesAPI.Discount | null;
4986
+ discount?: OverrideBulkBpsPrice.Discount | null;
4267
4987
 
4268
4988
  /**
4269
4989
  * The starting quantity of the price, if the price is a fixed price.
@@ -4308,6 +5028,41 @@ export namespace SubscriptionSchedulePlanChangeParams {
4308
5028
  per_unit_maximum?: string | null;
4309
5029
  }
4310
5030
  }
5031
+
5032
+ /**
5033
+ * The subscription's override discount for the plan.
5034
+ */
5035
+ export interface Discount {
5036
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
5037
+
5038
+ /**
5039
+ * Only available if discount_type is `amount`.
5040
+ */
5041
+ amount_discount?: string | null;
5042
+
5043
+ /**
5044
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
5045
+ * this can be a subset of prices.
5046
+ */
5047
+ applies_to_price_ids?: Array<string> | null;
5048
+
5049
+ /**
5050
+ * Only available if discount_type is `percentage`. This is a number between 0
5051
+ * and 1.
5052
+ */
5053
+ percentage_discount?: number | null;
5054
+
5055
+ /**
5056
+ * Only available if discount_type is `trial`
5057
+ */
5058
+ trial_amount_discount?: string | null;
5059
+
5060
+ /**
5061
+ * Only available if discount_type is `usage`. Number of usage units that this
5062
+ * discount is for
5063
+ */
5064
+ usage_discount?: number | null;
5065
+ }
4311
5066
  }
4312
5067
 
4313
5068
  export interface OverrideBulkPrice {
@@ -4320,7 +5075,7 @@ export namespace SubscriptionSchedulePlanChangeParams {
4320
5075
  /**
4321
5076
  * The subscription's override discount for the plan.
4322
5077
  */
4323
- discount?: PricesAPI.Discount | null;
5078
+ discount?: OverrideBulkPrice.Discount | null;
4324
5079
 
4325
5080
  /**
4326
5081
  * The starting quantity of the price, if the price is a fixed price.
@@ -4359,6 +5114,41 @@ export namespace SubscriptionSchedulePlanChangeParams {
4359
5114
  maximum_units?: number | null;
4360
5115
  }
4361
5116
  }
5117
+
5118
+ /**
5119
+ * The subscription's override discount for the plan.
5120
+ */
5121
+ export interface Discount {
5122
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
5123
+
5124
+ /**
5125
+ * Only available if discount_type is `amount`.
5126
+ */
5127
+ amount_discount?: string | null;
5128
+
5129
+ /**
5130
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
5131
+ * this can be a subset of prices.
5132
+ */
5133
+ applies_to_price_ids?: Array<string> | null;
5134
+
5135
+ /**
5136
+ * Only available if discount_type is `percentage`. This is a number between 0
5137
+ * and 1.
5138
+ */
5139
+ percentage_discount?: number | null;
5140
+
5141
+ /**
5142
+ * Only available if discount_type is `trial`
5143
+ */
5144
+ trial_amount_discount?: string | null;
5145
+
5146
+ /**
5147
+ * Only available if discount_type is `usage`. Number of usage units that this
5148
+ * discount is for
5149
+ */
5150
+ usage_discount?: number | null;
5151
+ }
4362
5152
  }
4363
5153
 
4364
5154
  export interface OverrideTestRatingFunctionPrice {
@@ -4371,7 +5161,7 @@ export namespace SubscriptionSchedulePlanChangeParams {
4371
5161
  /**
4372
5162
  * The subscription's override discount for the plan.
4373
5163
  */
4374
- discount?: PricesAPI.Discount | null;
5164
+ discount?: OverrideTestRatingFunctionPrice.Discount | null;
4375
5165
 
4376
5166
  /**
4377
5167
  * The starting quantity of the price, if the price is a fixed price.
@@ -4389,6 +5179,43 @@ export namespace SubscriptionSchedulePlanChangeParams {
4389
5179
  minimum_amount?: string | null;
4390
5180
  }
4391
5181
 
5182
+ export namespace OverrideTestRatingFunctionPrice {
5183
+ /**
5184
+ * The subscription's override discount for the plan.
5185
+ */
5186
+ export interface Discount {
5187
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
5188
+
5189
+ /**
5190
+ * Only available if discount_type is `amount`.
5191
+ */
5192
+ amount_discount?: string | null;
5193
+
5194
+ /**
5195
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
5196
+ * this can be a subset of prices.
5197
+ */
5198
+ applies_to_price_ids?: Array<string> | null;
5199
+
5200
+ /**
5201
+ * Only available if discount_type is `percentage`. This is a number between 0
5202
+ * and 1.
5203
+ */
5204
+ percentage_discount?: number | null;
5205
+
5206
+ /**
5207
+ * Only available if discount_type is `trial`
5208
+ */
5209
+ trial_amount_discount?: string | null;
5210
+
5211
+ /**
5212
+ * Only available if discount_type is `usage`. Number of usage units that this
5213
+ * discount is for
5214
+ */
5215
+ usage_discount?: number | null;
5216
+ }
5217
+ }
5218
+
4392
5219
  export interface OverrideFivetranExamplePrice {
4393
5220
  id: string;
4394
5221
 
@@ -4399,7 +5226,7 @@ export namespace SubscriptionSchedulePlanChangeParams {
4399
5226
  /**
4400
5227
  * The subscription's override discount for the plan.
4401
5228
  */
4402
- discount?: PricesAPI.Discount | null;
5229
+ discount?: OverrideFivetranExamplePrice.Discount | null;
4403
5230
 
4404
5231
  /**
4405
5232
  * The starting quantity of the price, if the price is a fixed price.
@@ -4417,6 +5244,43 @@ export namespace SubscriptionSchedulePlanChangeParams {
4417
5244
  minimum_amount?: string | null;
4418
5245
  }
4419
5246
 
5247
+ export namespace OverrideFivetranExamplePrice {
5248
+ /**
5249
+ * The subscription's override discount for the plan.
5250
+ */
5251
+ export interface Discount {
5252
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
5253
+
5254
+ /**
5255
+ * Only available if discount_type is `amount`.
5256
+ */
5257
+ amount_discount?: string | null;
5258
+
5259
+ /**
5260
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
5261
+ * this can be a subset of prices.
5262
+ */
5263
+ applies_to_price_ids?: Array<string> | null;
5264
+
5265
+ /**
5266
+ * Only available if discount_type is `percentage`. This is a number between 0
5267
+ * and 1.
5268
+ */
5269
+ percentage_discount?: number | null;
5270
+
5271
+ /**
5272
+ * Only available if discount_type is `trial`
5273
+ */
5274
+ trial_amount_discount?: string | null;
5275
+
5276
+ /**
5277
+ * Only available if discount_type is `usage`. Number of usage units that this
5278
+ * discount is for
5279
+ */
5280
+ usage_discount?: number | null;
5281
+ }
5282
+ }
5283
+
4420
5284
  export interface OverrideThresholdTotalAmountPrice {
4421
5285
  id: string;
4422
5286
 
@@ -4427,7 +5291,7 @@ export namespace SubscriptionSchedulePlanChangeParams {
4427
5291
  /**
4428
5292
  * The subscription's override discount for the plan.
4429
5293
  */
4430
- discount?: PricesAPI.Discount | null;
5294
+ discount?: OverrideThresholdTotalAmountPrice.Discount | null;
4431
5295
 
4432
5296
  /**
4433
5297
  * The starting quantity of the price, if the price is a fixed price.
@@ -4445,6 +5309,43 @@ export namespace SubscriptionSchedulePlanChangeParams {
4445
5309
  minimum_amount?: string | null;
4446
5310
  }
4447
5311
 
5312
+ export namespace OverrideThresholdTotalAmountPrice {
5313
+ /**
5314
+ * The subscription's override discount for the plan.
5315
+ */
5316
+ export interface Discount {
5317
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
5318
+
5319
+ /**
5320
+ * Only available if discount_type is `amount`.
5321
+ */
5322
+ amount_discount?: string | null;
5323
+
5324
+ /**
5325
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
5326
+ * this can be a subset of prices.
5327
+ */
5328
+ applies_to_price_ids?: Array<string> | null;
5329
+
5330
+ /**
5331
+ * Only available if discount_type is `percentage`. This is a number between 0
5332
+ * and 1.
5333
+ */
5334
+ percentage_discount?: number | null;
5335
+
5336
+ /**
5337
+ * Only available if discount_type is `trial`
5338
+ */
5339
+ trial_amount_discount?: string | null;
5340
+
5341
+ /**
5342
+ * Only available if discount_type is `usage`. Number of usage units that this
5343
+ * discount is for
5344
+ */
5345
+ usage_discount?: number | null;
5346
+ }
5347
+ }
5348
+
4448
5349
  export interface OverrideTieredPackagePrice {
4449
5350
  id: string;
4450
5351
 
@@ -4455,7 +5356,7 @@ export namespace SubscriptionSchedulePlanChangeParams {
4455
5356
  /**
4456
5357
  * The subscription's override discount for the plan.
4457
5358
  */
4458
- discount?: PricesAPI.Discount | null;
5359
+ discount?: OverrideTieredPackagePrice.Discount | null;
4459
5360
 
4460
5361
  /**
4461
5362
  * The starting quantity of the price, if the price is a fixed price.
@@ -4473,6 +5374,43 @@ export namespace SubscriptionSchedulePlanChangeParams {
4473
5374
  minimum_amount?: string | null;
4474
5375
  }
4475
5376
 
5377
+ export namespace OverrideTieredPackagePrice {
5378
+ /**
5379
+ * The subscription's override discount for the plan.
5380
+ */
5381
+ export interface Discount {
5382
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
5383
+
5384
+ /**
5385
+ * Only available if discount_type is `amount`.
5386
+ */
5387
+ amount_discount?: string | null;
5388
+
5389
+ /**
5390
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
5391
+ * this can be a subset of prices.
5392
+ */
5393
+ applies_to_price_ids?: Array<string> | null;
5394
+
5395
+ /**
5396
+ * Only available if discount_type is `percentage`. This is a number between 0
5397
+ * and 1.
5398
+ */
5399
+ percentage_discount?: number | null;
5400
+
5401
+ /**
5402
+ * Only available if discount_type is `trial`
5403
+ */
5404
+ trial_amount_discount?: string | null;
5405
+
5406
+ /**
5407
+ * Only available if discount_type is `usage`. Number of usage units that this
5408
+ * discount is for
5409
+ */
5410
+ usage_discount?: number | null;
5411
+ }
5412
+ }
5413
+
4476
5414
  export interface OverrideTieredWithMinimumPrice {
4477
5415
  id: string;
4478
5416
 
@@ -4483,7 +5421,7 @@ export namespace SubscriptionSchedulePlanChangeParams {
4483
5421
  /**
4484
5422
  * The subscription's override discount for the plan.
4485
5423
  */
4486
- discount?: PricesAPI.Discount | null;
5424
+ discount?: OverrideTieredWithMinimumPrice.Discount | null;
4487
5425
 
4488
5426
  /**
4489
5427
  * The starting quantity of the price, if the price is a fixed price.
@@ -4501,6 +5439,43 @@ export namespace SubscriptionSchedulePlanChangeParams {
4501
5439
  minimum_amount?: string | null;
4502
5440
  }
4503
5441
 
5442
+ export namespace OverrideTieredWithMinimumPrice {
5443
+ /**
5444
+ * The subscription's override discount for the plan.
5445
+ */
5446
+ export interface Discount {
5447
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
5448
+
5449
+ /**
5450
+ * Only available if discount_type is `amount`.
5451
+ */
5452
+ amount_discount?: string | null;
5453
+
5454
+ /**
5455
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
5456
+ * this can be a subset of prices.
5457
+ */
5458
+ applies_to_price_ids?: Array<string> | null;
5459
+
5460
+ /**
5461
+ * Only available if discount_type is `percentage`. This is a number between 0
5462
+ * and 1.
5463
+ */
5464
+ percentage_discount?: number | null;
5465
+
5466
+ /**
5467
+ * Only available if discount_type is `trial`
5468
+ */
5469
+ trial_amount_discount?: string | null;
5470
+
5471
+ /**
5472
+ * Only available if discount_type is `usage`. Number of usage units that this
5473
+ * discount is for
5474
+ */
5475
+ usage_discount?: number | null;
5476
+ }
5477
+ }
5478
+
4504
5479
  export interface OverridePackageWithAllocationPrice {
4505
5480
  id: string;
4506
5481
 
@@ -4511,7 +5486,7 @@ export namespace SubscriptionSchedulePlanChangeParams {
4511
5486
  /**
4512
5487
  * The subscription's override discount for the plan.
4513
5488
  */
4514
- discount?: PricesAPI.Discount | null;
5489
+ discount?: OverridePackageWithAllocationPrice.Discount | null;
4515
5490
 
4516
5491
  /**
4517
5492
  * The starting quantity of the price, if the price is a fixed price.
@@ -4528,6 +5503,43 @@ export namespace SubscriptionSchedulePlanChangeParams {
4528
5503
  */
4529
5504
  minimum_amount?: string | null;
4530
5505
  }
5506
+
5507
+ export namespace OverridePackageWithAllocationPrice {
5508
+ /**
5509
+ * The subscription's override discount for the plan.
5510
+ */
5511
+ export interface Discount {
5512
+ discount_type: 'percentage' | 'trial' | 'usage' | 'amount';
5513
+
5514
+ /**
5515
+ * Only available if discount_type is `amount`.
5516
+ */
5517
+ amount_discount?: string | null;
5518
+
5519
+ /**
5520
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
5521
+ * this can be a subset of prices.
5522
+ */
5523
+ applies_to_price_ids?: Array<string> | null;
5524
+
5525
+ /**
5526
+ * Only available if discount_type is `percentage`. This is a number between 0
5527
+ * and 1.
5528
+ */
5529
+ percentage_discount?: number | null;
5530
+
5531
+ /**
5532
+ * Only available if discount_type is `trial`
5533
+ */
5534
+ trial_amount_discount?: string | null;
5535
+
5536
+ /**
5537
+ * Only available if discount_type is `usage`. Number of usage units that this
5538
+ * discount is for
5539
+ */
5540
+ usage_discount?: number | null;
5541
+ }
5542
+ }
4531
5543
  }
4532
5544
 
4533
5545
  export interface SubscriptionTriggerPhaseParams {
@@ -4570,8 +5582,8 @@ export interface SubscriptionUpdateFixedFeeQuantityParams {
4570
5582
 
4571
5583
  export namespace Subscriptions {
4572
5584
  export import Subscription = SubscriptionsAPI.Subscription;
4573
- export import Subscriptions = SubscriptionsAPI.Subscriptions;
4574
5585
  export import SubscriptionUsage = SubscriptionsAPI.SubscriptionUsage;
5586
+ export import Subscriptions = SubscriptionsAPI.Subscriptions;
4575
5587
  export import SubscriptionFetchCostsResponse = SubscriptionsAPI.SubscriptionFetchCostsResponse;
4576
5588
  export import SubscriptionFetchScheduleResponse = SubscriptionsAPI.SubscriptionFetchScheduleResponse;
4577
5589
  export import SubscriptionsPage = SubscriptionsAPI.SubscriptionsPage;