orb-billing 5.6.0 → 5.8.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.
- package/CHANGELOG.md +27 -0
- package/core.js +3 -3
- package/core.js.map +1 -1
- package/core.mjs +3 -3
- package/core.mjs.map +1 -1
- package/index.d.mts +2 -4
- package/index.d.ts +2 -4
- package/index.d.ts.map +1 -1
- package/index.js.map +1 -1
- package/index.mjs.map +1 -1
- package/package.json +1 -1
- package/resources/beta/beta.d.ts +288 -10
- package/resources/beta/beta.d.ts.map +1 -1
- package/resources/beta/beta.js.map +1 -1
- package/resources/beta/beta.mjs.map +1 -1
- package/resources/beta/external-plan-id.d.ts +288 -10
- package/resources/beta/external-plan-id.d.ts.map +1 -1
- package/resources/customers/customers.d.ts +27 -6
- package/resources/customers/customers.d.ts.map +1 -1
- package/resources/customers/customers.js.map +1 -1
- package/resources/customers/customers.mjs.map +1 -1
- package/resources/index.d.ts +1 -1
- package/resources/index.d.ts.map +1 -1
- package/resources/index.js.map +1 -1
- package/resources/index.mjs.map +1 -1
- package/resources/invoices.d.ts +3 -0
- package/resources/invoices.d.ts.map +1 -1
- package/resources/invoices.js.map +1 -1
- package/resources/invoices.mjs.map +1 -1
- package/resources/plans/plans.d.ts +144 -5
- package/resources/plans/plans.d.ts.map +1 -1
- package/resources/plans/plans.js.map +1 -1
- package/resources/plans/plans.mjs.map +1 -1
- package/resources/prices/prices.d.ts +926 -123
- package/resources/prices/prices.d.ts.map +1 -1
- package/resources/prices/prices.js.map +1 -1
- package/resources/prices/prices.mjs.map +1 -1
- package/resources/shared.d.ts +2474 -338
- package/resources/shared.d.ts.map +1 -1
- package/resources/shared.js.map +1 -1
- package/resources/shared.mjs.map +1 -1
- package/resources/subscriptions.d.ts +1369 -174
- package/resources/subscriptions.d.ts.map +1 -1
- package/resources/subscriptions.js.map +1 -1
- package/resources/subscriptions.mjs.map +1 -1
- package/src/core.ts +3 -3
- package/src/index.ts +0 -4
- package/src/resources/beta/beta.ts +348 -20
- package/src/resources/beta/external-plan-id.ts +348 -20
- package/src/resources/customers/customers.ts +48 -6
- package/src/resources/index.ts +0 -1
- package/src/resources/invoices.ts +3 -0
- package/src/resources/plans/plans.ts +174 -10
- package/src/resources/prices/prices.ts +1060 -113
- package/src/resources/shared.ts +2792 -288
- package/src/resources/subscriptions.ts +1609 -202
- package/src/version.ts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/version.mjs +1 -1
package/src/resources/shared.ts
CHANGED
|
@@ -155,6 +155,9 @@ export interface BillingCycleConfiguration {
|
|
|
155
155
|
|
|
156
156
|
export type BillingCycleRelativeDate = 'start_of_term' | 'end_of_term';
|
|
157
157
|
|
|
158
|
+
/**
|
|
159
|
+
* Configuration for bulk pricing
|
|
160
|
+
*/
|
|
158
161
|
export interface BulkConfig {
|
|
159
162
|
/**
|
|
160
163
|
* Bulk tiers for rating based on total usage volume
|
|
@@ -162,6 +165,9 @@ export interface BulkConfig {
|
|
|
162
165
|
tiers: Array<BulkTier>;
|
|
163
166
|
}
|
|
164
167
|
|
|
168
|
+
/**
|
|
169
|
+
* Configuration for a single bulk pricing tier
|
|
170
|
+
*/
|
|
165
171
|
export interface BulkTier {
|
|
166
172
|
/**
|
|
167
173
|
* Amount per unit
|
|
@@ -1480,6 +1486,9 @@ export interface ItemSlim {
|
|
|
1480
1486
|
name: string;
|
|
1481
1487
|
}
|
|
1482
1488
|
|
|
1489
|
+
/**
|
|
1490
|
+
* Configuration for matrix pricing
|
|
1491
|
+
*/
|
|
1483
1492
|
export interface MatrixConfig {
|
|
1484
1493
|
/**
|
|
1485
1494
|
* Default per unit rate for any usage not bucketed into a specified matrix_value
|
|
@@ -1492,7 +1501,7 @@ export interface MatrixConfig {
|
|
|
1492
1501
|
dimensions: Array<string | null>;
|
|
1493
1502
|
|
|
1494
1503
|
/**
|
|
1495
|
-
* Matrix values
|
|
1504
|
+
* Matrix values configuration
|
|
1496
1505
|
*/
|
|
1497
1506
|
matrix_values: Array<MatrixValue>;
|
|
1498
1507
|
}
|
|
@@ -1514,11 +1523,12 @@ export interface MatrixSubLineItem {
|
|
|
1514
1523
|
type: 'matrix';
|
|
1515
1524
|
}
|
|
1516
1525
|
|
|
1526
|
+
/**
|
|
1527
|
+
* Configuration for a single matrix value
|
|
1528
|
+
*/
|
|
1517
1529
|
export interface MatrixValue {
|
|
1518
1530
|
/**
|
|
1519
|
-
* One or two matrix keys to filter usage to this Matrix value by
|
|
1520
|
-
* ["region", "tier"] could be used to filter cloud usage by a cloud region and an
|
|
1521
|
-
* instance tier.
|
|
1531
|
+
* One or two matrix keys to filter usage to this Matrix value by
|
|
1522
1532
|
*/
|
|
1523
1533
|
dimension_values: Array<string | null>;
|
|
1524
1534
|
|
|
@@ -1528,11 +1538,14 @@ export interface MatrixValue {
|
|
|
1528
1538
|
unit_amount: string;
|
|
1529
1539
|
}
|
|
1530
1540
|
|
|
1541
|
+
/**
|
|
1542
|
+
* Configuration for matrix pricing with usage allocation
|
|
1543
|
+
*/
|
|
1531
1544
|
export interface MatrixWithAllocationConfig {
|
|
1532
1545
|
/**
|
|
1533
|
-
*
|
|
1546
|
+
* Usage allocation
|
|
1534
1547
|
*/
|
|
1535
|
-
allocation:
|
|
1548
|
+
allocation: string;
|
|
1536
1549
|
|
|
1537
1550
|
/**
|
|
1538
1551
|
* Default per unit rate for any usage not bucketed into a specified matrix_value
|
|
@@ -1545,9 +1558,28 @@ export interface MatrixWithAllocationConfig {
|
|
|
1545
1558
|
dimensions: Array<string | null>;
|
|
1546
1559
|
|
|
1547
1560
|
/**
|
|
1548
|
-
* Matrix values
|
|
1561
|
+
* Matrix values configuration
|
|
1549
1562
|
*/
|
|
1550
|
-
matrix_values: Array<MatrixValue>;
|
|
1563
|
+
matrix_values: Array<MatrixWithAllocationConfig.MatrixValue>;
|
|
1564
|
+
}
|
|
1565
|
+
|
|
1566
|
+
export namespace MatrixWithAllocationConfig {
|
|
1567
|
+
/**
|
|
1568
|
+
* Configuration for a single matrix value
|
|
1569
|
+
*/
|
|
1570
|
+
export interface MatrixValue {
|
|
1571
|
+
/**
|
|
1572
|
+
* One or two matrix keys to filter usage to this Matrix value by. For example,
|
|
1573
|
+
* ["region", "tier"] could be used to filter cloud usage by a cloud region and an
|
|
1574
|
+
* instance tier.
|
|
1575
|
+
*/
|
|
1576
|
+
dimension_values: Array<string | null>;
|
|
1577
|
+
|
|
1578
|
+
/**
|
|
1579
|
+
* Unit price for the specified dimension_values
|
|
1580
|
+
*/
|
|
1581
|
+
unit_amount: string;
|
|
1582
|
+
}
|
|
1551
1583
|
}
|
|
1552
1584
|
|
|
1553
1585
|
export interface Maximum {
|
|
@@ -1969,6 +2001,9 @@ export interface NewDimensionalPriceConfiguration {
|
|
|
1969
2001
|
}
|
|
1970
2002
|
|
|
1971
2003
|
export interface NewFloatingBulkPrice {
|
|
2004
|
+
/**
|
|
2005
|
+
* Configuration for bulk pricing
|
|
2006
|
+
*/
|
|
1972
2007
|
bulk_config: BulkConfig;
|
|
1973
2008
|
|
|
1974
2009
|
/**
|
|
@@ -1986,6 +2021,9 @@ export interface NewFloatingBulkPrice {
|
|
|
1986
2021
|
*/
|
|
1987
2022
|
item_id: string;
|
|
1988
2023
|
|
|
2024
|
+
/**
|
|
2025
|
+
* The pricing model type
|
|
2026
|
+
*/
|
|
1989
2027
|
model_type: 'bulk';
|
|
1990
2028
|
|
|
1991
2029
|
/**
|
|
@@ -2057,7 +2095,10 @@ export interface NewFloatingBulkPrice {
|
|
|
2057
2095
|
}
|
|
2058
2096
|
|
|
2059
2097
|
export interface NewFloatingBulkWithProrationPrice {
|
|
2060
|
-
|
|
2098
|
+
/**
|
|
2099
|
+
* Configuration for bulk_with_proration pricing
|
|
2100
|
+
*/
|
|
2101
|
+
bulk_with_proration_config: NewFloatingBulkWithProrationPrice.BulkWithProrationConfig;
|
|
2061
2102
|
|
|
2062
2103
|
/**
|
|
2063
2104
|
* The cadence to bill for this price on.
|
|
@@ -2074,6 +2115,9 @@ export interface NewFloatingBulkWithProrationPrice {
|
|
|
2074
2115
|
*/
|
|
2075
2116
|
item_id: string;
|
|
2076
2117
|
|
|
2118
|
+
/**
|
|
2119
|
+
* The pricing model type
|
|
2120
|
+
*/
|
|
2077
2121
|
model_type: 'bulk_with_proration';
|
|
2078
2122
|
|
|
2079
2123
|
/**
|
|
@@ -2144,13 +2188,45 @@ export interface NewFloatingBulkWithProrationPrice {
|
|
|
2144
2188
|
metadata?: { [key: string]: string | null } | null;
|
|
2145
2189
|
}
|
|
2146
2190
|
|
|
2191
|
+
export namespace NewFloatingBulkWithProrationPrice {
|
|
2192
|
+
/**
|
|
2193
|
+
* Configuration for bulk_with_proration pricing
|
|
2194
|
+
*/
|
|
2195
|
+
export interface BulkWithProrationConfig {
|
|
2196
|
+
/**
|
|
2197
|
+
* Bulk tiers for rating based on total usage volume
|
|
2198
|
+
*/
|
|
2199
|
+
tiers: Array<BulkWithProrationConfig.Tier>;
|
|
2200
|
+
}
|
|
2201
|
+
|
|
2202
|
+
export namespace BulkWithProrationConfig {
|
|
2203
|
+
/**
|
|
2204
|
+
* Configuration for a single bulk pricing tier with proration
|
|
2205
|
+
*/
|
|
2206
|
+
export interface Tier {
|
|
2207
|
+
/**
|
|
2208
|
+
* Cost per unit
|
|
2209
|
+
*/
|
|
2210
|
+
unit_amount: string;
|
|
2211
|
+
|
|
2212
|
+
/**
|
|
2213
|
+
* The lower bound for this tier
|
|
2214
|
+
*/
|
|
2215
|
+
tier_lower_bound?: string | null;
|
|
2216
|
+
}
|
|
2217
|
+
}
|
|
2218
|
+
}
|
|
2219
|
+
|
|
2147
2220
|
export interface NewFloatingCumulativeGroupedBulkPrice {
|
|
2148
2221
|
/**
|
|
2149
2222
|
* The cadence to bill for this price on.
|
|
2150
2223
|
*/
|
|
2151
2224
|
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
2152
2225
|
|
|
2153
|
-
|
|
2226
|
+
/**
|
|
2227
|
+
* Configuration for cumulative_grouped_bulk pricing
|
|
2228
|
+
*/
|
|
2229
|
+
cumulative_grouped_bulk_config: NewFloatingCumulativeGroupedBulkPrice.CumulativeGroupedBulkConfig;
|
|
2154
2230
|
|
|
2155
2231
|
/**
|
|
2156
2232
|
* An ISO 4217 currency string for which this price is billed in.
|
|
@@ -2162,6 +2238,9 @@ export interface NewFloatingCumulativeGroupedBulkPrice {
|
|
|
2162
2238
|
*/
|
|
2163
2239
|
item_id: string;
|
|
2164
2240
|
|
|
2241
|
+
/**
|
|
2242
|
+
* The pricing model type
|
|
2243
|
+
*/
|
|
2165
2244
|
model_type: 'cumulative_grouped_bulk';
|
|
2166
2245
|
|
|
2167
2246
|
/**
|
|
@@ -2232,6 +2311,45 @@ export interface NewFloatingCumulativeGroupedBulkPrice {
|
|
|
2232
2311
|
metadata?: { [key: string]: string | null } | null;
|
|
2233
2312
|
}
|
|
2234
2313
|
|
|
2314
|
+
export namespace NewFloatingCumulativeGroupedBulkPrice {
|
|
2315
|
+
/**
|
|
2316
|
+
* Configuration for cumulative_grouped_bulk pricing
|
|
2317
|
+
*/
|
|
2318
|
+
export interface CumulativeGroupedBulkConfig {
|
|
2319
|
+
/**
|
|
2320
|
+
* Each tier lower bound must have the same group of values.
|
|
2321
|
+
*/
|
|
2322
|
+
dimension_values: Array<CumulativeGroupedBulkConfig.DimensionValue>;
|
|
2323
|
+
|
|
2324
|
+
/**
|
|
2325
|
+
* Grouping key name
|
|
2326
|
+
*/
|
|
2327
|
+
group: string;
|
|
2328
|
+
}
|
|
2329
|
+
|
|
2330
|
+
export namespace CumulativeGroupedBulkConfig {
|
|
2331
|
+
/**
|
|
2332
|
+
* Configuration for a dimension value entry
|
|
2333
|
+
*/
|
|
2334
|
+
export interface DimensionValue {
|
|
2335
|
+
/**
|
|
2336
|
+
* Grouping key value
|
|
2337
|
+
*/
|
|
2338
|
+
grouping_key: string;
|
|
2339
|
+
|
|
2340
|
+
/**
|
|
2341
|
+
* Tier lower bound
|
|
2342
|
+
*/
|
|
2343
|
+
tier_lower_bound: string;
|
|
2344
|
+
|
|
2345
|
+
/**
|
|
2346
|
+
* Unit amount for this combination
|
|
2347
|
+
*/
|
|
2348
|
+
unit_amount: string;
|
|
2349
|
+
}
|
|
2350
|
+
}
|
|
2351
|
+
}
|
|
2352
|
+
|
|
2235
2353
|
export interface NewFloatingGroupedAllocationPrice {
|
|
2236
2354
|
/**
|
|
2237
2355
|
* The cadence to bill for this price on.
|
|
@@ -2243,13 +2361,19 @@ export interface NewFloatingGroupedAllocationPrice {
|
|
|
2243
2361
|
*/
|
|
2244
2362
|
currency: string;
|
|
2245
2363
|
|
|
2246
|
-
|
|
2364
|
+
/**
|
|
2365
|
+
* Configuration for grouped_allocation pricing
|
|
2366
|
+
*/
|
|
2367
|
+
grouped_allocation_config: NewFloatingGroupedAllocationPrice.GroupedAllocationConfig;
|
|
2247
2368
|
|
|
2248
2369
|
/**
|
|
2249
2370
|
* The id of the item the price will be associated with.
|
|
2250
2371
|
*/
|
|
2251
2372
|
item_id: string;
|
|
2252
2373
|
|
|
2374
|
+
/**
|
|
2375
|
+
* The pricing model type
|
|
2376
|
+
*/
|
|
2253
2377
|
model_type: 'grouped_allocation';
|
|
2254
2378
|
|
|
2255
2379
|
/**
|
|
@@ -2320,6 +2444,28 @@ export interface NewFloatingGroupedAllocationPrice {
|
|
|
2320
2444
|
metadata?: { [key: string]: string | null } | null;
|
|
2321
2445
|
}
|
|
2322
2446
|
|
|
2447
|
+
export namespace NewFloatingGroupedAllocationPrice {
|
|
2448
|
+
/**
|
|
2449
|
+
* Configuration for grouped_allocation pricing
|
|
2450
|
+
*/
|
|
2451
|
+
export interface GroupedAllocationConfig {
|
|
2452
|
+
/**
|
|
2453
|
+
* Usage allocation per group
|
|
2454
|
+
*/
|
|
2455
|
+
allocation: string;
|
|
2456
|
+
|
|
2457
|
+
/**
|
|
2458
|
+
* How to determine the groups that should each be allocated some quantity
|
|
2459
|
+
*/
|
|
2460
|
+
grouping_key: string;
|
|
2461
|
+
|
|
2462
|
+
/**
|
|
2463
|
+
* Unit rate for post-allocation
|
|
2464
|
+
*/
|
|
2465
|
+
overage_unit_rate: string;
|
|
2466
|
+
}
|
|
2467
|
+
}
|
|
2468
|
+
|
|
2323
2469
|
export interface NewFloatingGroupedTieredPackagePrice {
|
|
2324
2470
|
/**
|
|
2325
2471
|
* The cadence to bill for this price on.
|
|
@@ -2331,13 +2477,19 @@ export interface NewFloatingGroupedTieredPackagePrice {
|
|
|
2331
2477
|
*/
|
|
2332
2478
|
currency: string;
|
|
2333
2479
|
|
|
2334
|
-
|
|
2480
|
+
/**
|
|
2481
|
+
* Configuration for grouped_tiered_package pricing
|
|
2482
|
+
*/
|
|
2483
|
+
grouped_tiered_package_config: NewFloatingGroupedTieredPackagePrice.GroupedTieredPackageConfig;
|
|
2335
2484
|
|
|
2336
2485
|
/**
|
|
2337
2486
|
* The id of the item the price will be associated with.
|
|
2338
2487
|
*/
|
|
2339
2488
|
item_id: string;
|
|
2340
2489
|
|
|
2490
|
+
/**
|
|
2491
|
+
* The pricing model type
|
|
2492
|
+
*/
|
|
2341
2493
|
model_type: 'grouped_tiered_package';
|
|
2342
2494
|
|
|
2343
2495
|
/**
|
|
@@ -2408,6 +2560,46 @@ export interface NewFloatingGroupedTieredPackagePrice {
|
|
|
2408
2560
|
metadata?: { [key: string]: string | null } | null;
|
|
2409
2561
|
}
|
|
2410
2562
|
|
|
2563
|
+
export namespace NewFloatingGroupedTieredPackagePrice {
|
|
2564
|
+
/**
|
|
2565
|
+
* Configuration for grouped_tiered_package pricing
|
|
2566
|
+
*/
|
|
2567
|
+
export interface GroupedTieredPackageConfig {
|
|
2568
|
+
/**
|
|
2569
|
+
* The event property used to group before tiering
|
|
2570
|
+
*/
|
|
2571
|
+
grouping_key: string;
|
|
2572
|
+
|
|
2573
|
+
/**
|
|
2574
|
+
* Package size
|
|
2575
|
+
*/
|
|
2576
|
+
package_size: string;
|
|
2577
|
+
|
|
2578
|
+
/**
|
|
2579
|
+
* Apply tiered pricing after rounding up the quantity to the package size. Tiers
|
|
2580
|
+
* are defined using exclusive lower bounds.
|
|
2581
|
+
*/
|
|
2582
|
+
tiers: Array<GroupedTieredPackageConfig.Tier>;
|
|
2583
|
+
}
|
|
2584
|
+
|
|
2585
|
+
export namespace GroupedTieredPackageConfig {
|
|
2586
|
+
/**
|
|
2587
|
+
* Configuration for a single tier
|
|
2588
|
+
*/
|
|
2589
|
+
export interface Tier {
|
|
2590
|
+
/**
|
|
2591
|
+
* Price per package
|
|
2592
|
+
*/
|
|
2593
|
+
per_unit: string;
|
|
2594
|
+
|
|
2595
|
+
/**
|
|
2596
|
+
* Tier lower bound
|
|
2597
|
+
*/
|
|
2598
|
+
tier_lower_bound: string;
|
|
2599
|
+
}
|
|
2600
|
+
}
|
|
2601
|
+
}
|
|
2602
|
+
|
|
2411
2603
|
export interface NewFloatingGroupedTieredPrice {
|
|
2412
2604
|
/**
|
|
2413
2605
|
* The cadence to bill for this price on.
|
|
@@ -2419,13 +2611,19 @@ export interface NewFloatingGroupedTieredPrice {
|
|
|
2419
2611
|
*/
|
|
2420
2612
|
currency: string;
|
|
2421
2613
|
|
|
2422
|
-
|
|
2614
|
+
/**
|
|
2615
|
+
* Configuration for grouped_tiered pricing
|
|
2616
|
+
*/
|
|
2617
|
+
grouped_tiered_config: NewFloatingGroupedTieredPrice.GroupedTieredConfig;
|
|
2423
2618
|
|
|
2424
2619
|
/**
|
|
2425
2620
|
* The id of the item the price will be associated with.
|
|
2426
2621
|
*/
|
|
2427
2622
|
item_id: string;
|
|
2428
2623
|
|
|
2624
|
+
/**
|
|
2625
|
+
* The pricing model type
|
|
2626
|
+
*/
|
|
2429
2627
|
model_type: 'grouped_tiered';
|
|
2430
2628
|
|
|
2431
2629
|
/**
|
|
@@ -2496,6 +2694,41 @@ export interface NewFloatingGroupedTieredPrice {
|
|
|
2496
2694
|
metadata?: { [key: string]: string | null } | null;
|
|
2497
2695
|
}
|
|
2498
2696
|
|
|
2697
|
+
export namespace NewFloatingGroupedTieredPrice {
|
|
2698
|
+
/**
|
|
2699
|
+
* Configuration for grouped_tiered pricing
|
|
2700
|
+
*/
|
|
2701
|
+
export interface GroupedTieredConfig {
|
|
2702
|
+
/**
|
|
2703
|
+
* The billable metric property used to group before tiering
|
|
2704
|
+
*/
|
|
2705
|
+
grouping_key: string;
|
|
2706
|
+
|
|
2707
|
+
/**
|
|
2708
|
+
* Apply tiered pricing to each segment generated after grouping with the provided
|
|
2709
|
+
* key
|
|
2710
|
+
*/
|
|
2711
|
+
tiers: Array<GroupedTieredConfig.Tier>;
|
|
2712
|
+
}
|
|
2713
|
+
|
|
2714
|
+
export namespace GroupedTieredConfig {
|
|
2715
|
+
/**
|
|
2716
|
+
* Configuration for a single tier
|
|
2717
|
+
*/
|
|
2718
|
+
export interface Tier {
|
|
2719
|
+
/**
|
|
2720
|
+
* Tier lower bound
|
|
2721
|
+
*/
|
|
2722
|
+
tier_lower_bound: string;
|
|
2723
|
+
|
|
2724
|
+
/**
|
|
2725
|
+
* Per unit amount
|
|
2726
|
+
*/
|
|
2727
|
+
unit_amount: string;
|
|
2728
|
+
}
|
|
2729
|
+
}
|
|
2730
|
+
}
|
|
2731
|
+
|
|
2499
2732
|
export interface NewFloatingGroupedWithMeteredMinimumPrice {
|
|
2500
2733
|
/**
|
|
2501
2734
|
* The cadence to bill for this price on.
|
|
@@ -2507,13 +2740,19 @@ export interface NewFloatingGroupedWithMeteredMinimumPrice {
|
|
|
2507
2740
|
*/
|
|
2508
2741
|
currency: string;
|
|
2509
2742
|
|
|
2510
|
-
|
|
2743
|
+
/**
|
|
2744
|
+
* Configuration for grouped_with_metered_minimum pricing
|
|
2745
|
+
*/
|
|
2746
|
+
grouped_with_metered_minimum_config: NewFloatingGroupedWithMeteredMinimumPrice.GroupedWithMeteredMinimumConfig;
|
|
2511
2747
|
|
|
2512
2748
|
/**
|
|
2513
2749
|
* The id of the item the price will be associated with.
|
|
2514
2750
|
*/
|
|
2515
2751
|
item_id: string;
|
|
2516
2752
|
|
|
2753
|
+
/**
|
|
2754
|
+
* The pricing model type
|
|
2755
|
+
*/
|
|
2517
2756
|
model_type: 'grouped_with_metered_minimum';
|
|
2518
2757
|
|
|
2519
2758
|
/**
|
|
@@ -2584,6 +2823,77 @@ export interface NewFloatingGroupedWithMeteredMinimumPrice {
|
|
|
2584
2823
|
metadata?: { [key: string]: string | null } | null;
|
|
2585
2824
|
}
|
|
2586
2825
|
|
|
2826
|
+
export namespace NewFloatingGroupedWithMeteredMinimumPrice {
|
|
2827
|
+
/**
|
|
2828
|
+
* Configuration for grouped_with_metered_minimum pricing
|
|
2829
|
+
*/
|
|
2830
|
+
export interface GroupedWithMeteredMinimumConfig {
|
|
2831
|
+
/**
|
|
2832
|
+
* Used to partition the usage into groups. The minimum amount is applied to each
|
|
2833
|
+
* group.
|
|
2834
|
+
*/
|
|
2835
|
+
grouping_key: string;
|
|
2836
|
+
|
|
2837
|
+
/**
|
|
2838
|
+
* The minimum amount to charge per group per unit
|
|
2839
|
+
*/
|
|
2840
|
+
minimum_unit_amount: string;
|
|
2841
|
+
|
|
2842
|
+
/**
|
|
2843
|
+
* Used to determine the unit rate
|
|
2844
|
+
*/
|
|
2845
|
+
pricing_key: string;
|
|
2846
|
+
|
|
2847
|
+
/**
|
|
2848
|
+
* Scale the unit rates by the scaling factor.
|
|
2849
|
+
*/
|
|
2850
|
+
scaling_factors: Array<GroupedWithMeteredMinimumConfig.ScalingFactor>;
|
|
2851
|
+
|
|
2852
|
+
/**
|
|
2853
|
+
* Used to determine the unit rate scaling factor
|
|
2854
|
+
*/
|
|
2855
|
+
scaling_key: string;
|
|
2856
|
+
|
|
2857
|
+
/**
|
|
2858
|
+
* Apply per unit pricing to each pricing value. The minimum amount is applied any
|
|
2859
|
+
* unmatched usage.
|
|
2860
|
+
*/
|
|
2861
|
+
unit_amounts: Array<GroupedWithMeteredMinimumConfig.UnitAmount>;
|
|
2862
|
+
}
|
|
2863
|
+
|
|
2864
|
+
export namespace GroupedWithMeteredMinimumConfig {
|
|
2865
|
+
/**
|
|
2866
|
+
* Configuration for a scaling factor
|
|
2867
|
+
*/
|
|
2868
|
+
export interface ScalingFactor {
|
|
2869
|
+
/**
|
|
2870
|
+
* Scaling factor
|
|
2871
|
+
*/
|
|
2872
|
+
scaling_factor: string;
|
|
2873
|
+
|
|
2874
|
+
/**
|
|
2875
|
+
* Scaling value
|
|
2876
|
+
*/
|
|
2877
|
+
scaling_value: string;
|
|
2878
|
+
}
|
|
2879
|
+
|
|
2880
|
+
/**
|
|
2881
|
+
* Configuration for a unit amount
|
|
2882
|
+
*/
|
|
2883
|
+
export interface UnitAmount {
|
|
2884
|
+
/**
|
|
2885
|
+
* Pricing value
|
|
2886
|
+
*/
|
|
2887
|
+
pricing_value: string;
|
|
2888
|
+
|
|
2889
|
+
/**
|
|
2890
|
+
* Per unit amount
|
|
2891
|
+
*/
|
|
2892
|
+
unit_amount: string;
|
|
2893
|
+
}
|
|
2894
|
+
}
|
|
2895
|
+
}
|
|
2896
|
+
|
|
2587
2897
|
export interface NewFloatingGroupedWithProratedMinimumPrice {
|
|
2588
2898
|
/**
|
|
2589
2899
|
* The cadence to bill for this price on.
|
|
@@ -2595,13 +2905,19 @@ export interface NewFloatingGroupedWithProratedMinimumPrice {
|
|
|
2595
2905
|
*/
|
|
2596
2906
|
currency: string;
|
|
2597
2907
|
|
|
2598
|
-
|
|
2908
|
+
/**
|
|
2909
|
+
* Configuration for grouped_with_prorated_minimum pricing
|
|
2910
|
+
*/
|
|
2911
|
+
grouped_with_prorated_minimum_config: NewFloatingGroupedWithProratedMinimumPrice.GroupedWithProratedMinimumConfig;
|
|
2599
2912
|
|
|
2600
2913
|
/**
|
|
2601
2914
|
* The id of the item the price will be associated with.
|
|
2602
2915
|
*/
|
|
2603
2916
|
item_id: string;
|
|
2604
2917
|
|
|
2918
|
+
/**
|
|
2919
|
+
* The pricing model type
|
|
2920
|
+
*/
|
|
2605
2921
|
model_type: 'grouped_with_prorated_minimum';
|
|
2606
2922
|
|
|
2607
2923
|
/**
|
|
@@ -2672,6 +2988,28 @@ export interface NewFloatingGroupedWithProratedMinimumPrice {
|
|
|
2672
2988
|
metadata?: { [key: string]: string | null } | null;
|
|
2673
2989
|
}
|
|
2674
2990
|
|
|
2991
|
+
export namespace NewFloatingGroupedWithProratedMinimumPrice {
|
|
2992
|
+
/**
|
|
2993
|
+
* Configuration for grouped_with_prorated_minimum pricing
|
|
2994
|
+
*/
|
|
2995
|
+
export interface GroupedWithProratedMinimumConfig {
|
|
2996
|
+
/**
|
|
2997
|
+
* How to determine the groups that should each have a minimum
|
|
2998
|
+
*/
|
|
2999
|
+
grouping_key: string;
|
|
3000
|
+
|
|
3001
|
+
/**
|
|
3002
|
+
* The minimum amount to charge per group
|
|
3003
|
+
*/
|
|
3004
|
+
minimum: string;
|
|
3005
|
+
|
|
3006
|
+
/**
|
|
3007
|
+
* The amount to charge per unit
|
|
3008
|
+
*/
|
|
3009
|
+
unit_rate: string;
|
|
3010
|
+
}
|
|
3011
|
+
}
|
|
3012
|
+
|
|
2675
3013
|
export interface NewFloatingMatrixPrice {
|
|
2676
3014
|
/**
|
|
2677
3015
|
* The cadence to bill for this price on.
|
|
@@ -2688,8 +3026,14 @@ export interface NewFloatingMatrixPrice {
|
|
|
2688
3026
|
*/
|
|
2689
3027
|
item_id: string;
|
|
2690
3028
|
|
|
3029
|
+
/**
|
|
3030
|
+
* Configuration for matrix pricing
|
|
3031
|
+
*/
|
|
2691
3032
|
matrix_config: MatrixConfig;
|
|
2692
3033
|
|
|
3034
|
+
/**
|
|
3035
|
+
* The pricing model type
|
|
3036
|
+
*/
|
|
2693
3037
|
model_type: 'matrix';
|
|
2694
3038
|
|
|
2695
3039
|
/**
|
|
@@ -2776,8 +3120,14 @@ export interface NewFloatingMatrixWithAllocationPrice {
|
|
|
2776
3120
|
*/
|
|
2777
3121
|
item_id: string;
|
|
2778
3122
|
|
|
3123
|
+
/**
|
|
3124
|
+
* Configuration for matrix_with_allocation pricing
|
|
3125
|
+
*/
|
|
2779
3126
|
matrix_with_allocation_config: MatrixWithAllocationConfig;
|
|
2780
3127
|
|
|
3128
|
+
/**
|
|
3129
|
+
* The pricing model type
|
|
3130
|
+
*/
|
|
2781
3131
|
model_type: 'matrix_with_allocation';
|
|
2782
3132
|
|
|
2783
3133
|
/**
|
|
@@ -2864,8 +3214,14 @@ export interface NewFloatingMatrixWithDisplayNamePrice {
|
|
|
2864
3214
|
*/
|
|
2865
3215
|
item_id: string;
|
|
2866
3216
|
|
|
2867
|
-
|
|
3217
|
+
/**
|
|
3218
|
+
* Configuration for matrix_with_display_name pricing
|
|
3219
|
+
*/
|
|
3220
|
+
matrix_with_display_name_config: NewFloatingMatrixWithDisplayNamePrice.MatrixWithDisplayNameConfig;
|
|
2868
3221
|
|
|
3222
|
+
/**
|
|
3223
|
+
* The pricing model type
|
|
3224
|
+
*/
|
|
2869
3225
|
model_type: 'matrix_with_display_name';
|
|
2870
3226
|
|
|
2871
3227
|
/**
|
|
@@ -2936,6 +3292,45 @@ export interface NewFloatingMatrixWithDisplayNamePrice {
|
|
|
2936
3292
|
metadata?: { [key: string]: string | null } | null;
|
|
2937
3293
|
}
|
|
2938
3294
|
|
|
3295
|
+
export namespace NewFloatingMatrixWithDisplayNamePrice {
|
|
3296
|
+
/**
|
|
3297
|
+
* Configuration for matrix_with_display_name pricing
|
|
3298
|
+
*/
|
|
3299
|
+
export interface MatrixWithDisplayNameConfig {
|
|
3300
|
+
/**
|
|
3301
|
+
* Used to determine the unit rate
|
|
3302
|
+
*/
|
|
3303
|
+
dimension: string;
|
|
3304
|
+
|
|
3305
|
+
/**
|
|
3306
|
+
* Apply per unit pricing to each dimension value
|
|
3307
|
+
*/
|
|
3308
|
+
unit_amounts: Array<MatrixWithDisplayNameConfig.UnitAmount>;
|
|
3309
|
+
}
|
|
3310
|
+
|
|
3311
|
+
export namespace MatrixWithDisplayNameConfig {
|
|
3312
|
+
/**
|
|
3313
|
+
* Configuration for a unit amount item
|
|
3314
|
+
*/
|
|
3315
|
+
export interface UnitAmount {
|
|
3316
|
+
/**
|
|
3317
|
+
* The dimension value
|
|
3318
|
+
*/
|
|
3319
|
+
dimension_value: string;
|
|
3320
|
+
|
|
3321
|
+
/**
|
|
3322
|
+
* Display name for this dimension value
|
|
3323
|
+
*/
|
|
3324
|
+
display_name: string;
|
|
3325
|
+
|
|
3326
|
+
/**
|
|
3327
|
+
* Per unit amount
|
|
3328
|
+
*/
|
|
3329
|
+
unit_amount: string;
|
|
3330
|
+
}
|
|
3331
|
+
}
|
|
3332
|
+
}
|
|
3333
|
+
|
|
2939
3334
|
export interface NewFloatingMaxGroupTieredPackagePrice {
|
|
2940
3335
|
/**
|
|
2941
3336
|
* The cadence to bill for this price on.
|
|
@@ -2952,8 +3347,14 @@ export interface NewFloatingMaxGroupTieredPackagePrice {
|
|
|
2952
3347
|
*/
|
|
2953
3348
|
item_id: string;
|
|
2954
3349
|
|
|
2955
|
-
|
|
3350
|
+
/**
|
|
3351
|
+
* Configuration for max_group_tiered_package pricing
|
|
3352
|
+
*/
|
|
3353
|
+
max_group_tiered_package_config: NewFloatingMaxGroupTieredPackagePrice.MaxGroupTieredPackageConfig;
|
|
2956
3354
|
|
|
3355
|
+
/**
|
|
3356
|
+
* The pricing model type
|
|
3357
|
+
*/
|
|
2957
3358
|
model_type: 'max_group_tiered_package';
|
|
2958
3359
|
|
|
2959
3360
|
/**
|
|
@@ -3024,24 +3425,69 @@ export interface NewFloatingMaxGroupTieredPackagePrice {
|
|
|
3024
3425
|
metadata?: { [key: string]: string | null } | null;
|
|
3025
3426
|
}
|
|
3026
3427
|
|
|
3027
|
-
export
|
|
3428
|
+
export namespace NewFloatingMaxGroupTieredPackagePrice {
|
|
3028
3429
|
/**
|
|
3029
|
-
*
|
|
3430
|
+
* Configuration for max_group_tiered_package pricing
|
|
3030
3431
|
*/
|
|
3031
|
-
|
|
3432
|
+
export interface MaxGroupTieredPackageConfig {
|
|
3433
|
+
/**
|
|
3434
|
+
* The event property used to group before tiering the group with the highest value
|
|
3435
|
+
*/
|
|
3436
|
+
grouping_key: string;
|
|
3032
3437
|
|
|
3033
|
-
|
|
3034
|
-
|
|
3035
|
-
|
|
3036
|
-
|
|
3438
|
+
/**
|
|
3439
|
+
* Package size
|
|
3440
|
+
*/
|
|
3441
|
+
package_size: string;
|
|
3037
3442
|
|
|
3038
|
-
|
|
3039
|
-
|
|
3040
|
-
|
|
3443
|
+
/**
|
|
3444
|
+
* Apply tiered pricing to the largest group after grouping with the provided key.
|
|
3445
|
+
*/
|
|
3446
|
+
tiers: Array<MaxGroupTieredPackageConfig.Tier>;
|
|
3447
|
+
}
|
|
3448
|
+
|
|
3449
|
+
export namespace MaxGroupTieredPackageConfig {
|
|
3450
|
+
/**
|
|
3451
|
+
* Configuration for a single tier
|
|
3452
|
+
*/
|
|
3453
|
+
export interface Tier {
|
|
3454
|
+
/**
|
|
3455
|
+
* Tier lower bound
|
|
3456
|
+
*/
|
|
3457
|
+
tier_lower_bound: string;
|
|
3458
|
+
|
|
3459
|
+
/**
|
|
3460
|
+
* Per unit amount
|
|
3461
|
+
*/
|
|
3462
|
+
unit_amount: string;
|
|
3463
|
+
}
|
|
3464
|
+
}
|
|
3465
|
+
}
|
|
3466
|
+
|
|
3467
|
+
export interface NewFloatingMinimumCompositePrice {
|
|
3468
|
+
/**
|
|
3469
|
+
* The cadence to bill for this price on.
|
|
3470
|
+
*/
|
|
3471
|
+
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
3472
|
+
|
|
3473
|
+
/**
|
|
3474
|
+
* An ISO 4217 currency string for which this price is billed in.
|
|
3475
|
+
*/
|
|
3476
|
+
currency: string;
|
|
3477
|
+
|
|
3478
|
+
/**
|
|
3479
|
+
* The id of the item the price will be associated with.
|
|
3480
|
+
*/
|
|
3041
3481
|
item_id: string;
|
|
3042
3482
|
|
|
3483
|
+
/**
|
|
3484
|
+
* Configuration for minimum pricing
|
|
3485
|
+
*/
|
|
3043
3486
|
minimum_config: NewFloatingMinimumCompositePrice.MinimumConfig;
|
|
3044
3487
|
|
|
3488
|
+
/**
|
|
3489
|
+
* The pricing model type
|
|
3490
|
+
*/
|
|
3045
3491
|
model_type: 'minimum';
|
|
3046
3492
|
|
|
3047
3493
|
/**
|
|
@@ -3113,6 +3559,9 @@ export interface NewFloatingMinimumCompositePrice {
|
|
|
3113
3559
|
}
|
|
3114
3560
|
|
|
3115
3561
|
export namespace NewFloatingMinimumCompositePrice {
|
|
3562
|
+
/**
|
|
3563
|
+
* Configuration for minimum pricing
|
|
3564
|
+
*/
|
|
3116
3565
|
export interface MinimumConfig {
|
|
3117
3566
|
/**
|
|
3118
3567
|
* The minimum amount to apply
|
|
@@ -3120,10 +3569,9 @@ export namespace NewFloatingMinimumCompositePrice {
|
|
|
3120
3569
|
minimum_amount: string;
|
|
3121
3570
|
|
|
3122
3571
|
/**
|
|
3123
|
-
*
|
|
3124
|
-
* service period. Set to false to disable proration.
|
|
3572
|
+
* If true, subtotals from this price are prorated based on the service period
|
|
3125
3573
|
*/
|
|
3126
|
-
prorated?: boolean
|
|
3574
|
+
prorated?: boolean;
|
|
3127
3575
|
}
|
|
3128
3576
|
}
|
|
3129
3577
|
|
|
@@ -3143,6 +3591,9 @@ export interface NewFloatingPackagePrice {
|
|
|
3143
3591
|
*/
|
|
3144
3592
|
item_id: string;
|
|
3145
3593
|
|
|
3594
|
+
/**
|
|
3595
|
+
* The pricing model type
|
|
3596
|
+
*/
|
|
3146
3597
|
model_type: 'package';
|
|
3147
3598
|
|
|
3148
3599
|
/**
|
|
@@ -3150,6 +3601,9 @@ export interface NewFloatingPackagePrice {
|
|
|
3150
3601
|
*/
|
|
3151
3602
|
name: string;
|
|
3152
3603
|
|
|
3604
|
+
/**
|
|
3605
|
+
* Configuration for package pricing
|
|
3606
|
+
*/
|
|
3153
3607
|
package_config: PackageConfig;
|
|
3154
3608
|
|
|
3155
3609
|
/**
|
|
@@ -3231,6 +3685,9 @@ export interface NewFloatingPackageWithAllocationPrice {
|
|
|
3231
3685
|
*/
|
|
3232
3686
|
item_id: string;
|
|
3233
3687
|
|
|
3688
|
+
/**
|
|
3689
|
+
* The pricing model type
|
|
3690
|
+
*/
|
|
3234
3691
|
model_type: 'package_with_allocation';
|
|
3235
3692
|
|
|
3236
3693
|
/**
|
|
@@ -3238,7 +3695,10 @@ export interface NewFloatingPackageWithAllocationPrice {
|
|
|
3238
3695
|
*/
|
|
3239
3696
|
name: string;
|
|
3240
3697
|
|
|
3241
|
-
|
|
3698
|
+
/**
|
|
3699
|
+
* Configuration for package_with_allocation pricing
|
|
3700
|
+
*/
|
|
3701
|
+
package_with_allocation_config: NewFloatingPackageWithAllocationPrice.PackageWithAllocationConfig;
|
|
3242
3702
|
|
|
3243
3703
|
/**
|
|
3244
3704
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -3303,6 +3763,28 @@ export interface NewFloatingPackageWithAllocationPrice {
|
|
|
3303
3763
|
metadata?: { [key: string]: string | null } | null;
|
|
3304
3764
|
}
|
|
3305
3765
|
|
|
3766
|
+
export namespace NewFloatingPackageWithAllocationPrice {
|
|
3767
|
+
/**
|
|
3768
|
+
* Configuration for package_with_allocation pricing
|
|
3769
|
+
*/
|
|
3770
|
+
export interface PackageWithAllocationConfig {
|
|
3771
|
+
/**
|
|
3772
|
+
* Usage allocation
|
|
3773
|
+
*/
|
|
3774
|
+
allocation: string;
|
|
3775
|
+
|
|
3776
|
+
/**
|
|
3777
|
+
* Price per package
|
|
3778
|
+
*/
|
|
3779
|
+
package_amount: string;
|
|
3780
|
+
|
|
3781
|
+
/**
|
|
3782
|
+
* Package size
|
|
3783
|
+
*/
|
|
3784
|
+
package_size: string;
|
|
3785
|
+
}
|
|
3786
|
+
}
|
|
3787
|
+
|
|
3306
3788
|
export interface NewFloatingScalableMatrixWithTieredPricingPrice {
|
|
3307
3789
|
/**
|
|
3308
3790
|
* The cadence to bill for this price on.
|
|
@@ -3319,6 +3801,9 @@ export interface NewFloatingScalableMatrixWithTieredPricingPrice {
|
|
|
3319
3801
|
*/
|
|
3320
3802
|
item_id: string;
|
|
3321
3803
|
|
|
3804
|
+
/**
|
|
3805
|
+
* The pricing model type
|
|
3806
|
+
*/
|
|
3322
3807
|
model_type: 'scalable_matrix_with_tiered_pricing';
|
|
3323
3808
|
|
|
3324
3809
|
/**
|
|
@@ -3326,7 +3811,10 @@ export interface NewFloatingScalableMatrixWithTieredPricingPrice {
|
|
|
3326
3811
|
*/
|
|
3327
3812
|
name: string;
|
|
3328
3813
|
|
|
3329
|
-
|
|
3814
|
+
/**
|
|
3815
|
+
* Configuration for scalable_matrix_with_tiered_pricing pricing
|
|
3816
|
+
*/
|
|
3817
|
+
scalable_matrix_with_tiered_pricing_config: NewFloatingScalableMatrixWithTieredPricingPrice.ScalableMatrixWithTieredPricingConfig;
|
|
3330
3818
|
|
|
3331
3819
|
/**
|
|
3332
3820
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -3391,6 +3879,70 @@ export interface NewFloatingScalableMatrixWithTieredPricingPrice {
|
|
|
3391
3879
|
metadata?: { [key: string]: string | null } | null;
|
|
3392
3880
|
}
|
|
3393
3881
|
|
|
3882
|
+
export namespace NewFloatingScalableMatrixWithTieredPricingPrice {
|
|
3883
|
+
/**
|
|
3884
|
+
* Configuration for scalable_matrix_with_tiered_pricing pricing
|
|
3885
|
+
*/
|
|
3886
|
+
export interface ScalableMatrixWithTieredPricingConfig {
|
|
3887
|
+
/**
|
|
3888
|
+
* Used for the scalable matrix first dimension
|
|
3889
|
+
*/
|
|
3890
|
+
first_dimension: string;
|
|
3891
|
+
|
|
3892
|
+
/**
|
|
3893
|
+
* Apply a scaling factor to each dimension
|
|
3894
|
+
*/
|
|
3895
|
+
matrix_scaling_factors: Array<ScalableMatrixWithTieredPricingConfig.MatrixScalingFactor>;
|
|
3896
|
+
|
|
3897
|
+
/**
|
|
3898
|
+
* Tier pricing structure
|
|
3899
|
+
*/
|
|
3900
|
+
tiers: Array<ScalableMatrixWithTieredPricingConfig.Tier>;
|
|
3901
|
+
|
|
3902
|
+
/**
|
|
3903
|
+
* Used for the scalable matrix second dimension (optional)
|
|
3904
|
+
*/
|
|
3905
|
+
second_dimension?: string | null;
|
|
3906
|
+
}
|
|
3907
|
+
|
|
3908
|
+
export namespace ScalableMatrixWithTieredPricingConfig {
|
|
3909
|
+
/**
|
|
3910
|
+
* Configuration for a single matrix scaling factor
|
|
3911
|
+
*/
|
|
3912
|
+
export interface MatrixScalingFactor {
|
|
3913
|
+
/**
|
|
3914
|
+
* First dimension value
|
|
3915
|
+
*/
|
|
3916
|
+
first_dimension_value: string;
|
|
3917
|
+
|
|
3918
|
+
/**
|
|
3919
|
+
* Scaling factor
|
|
3920
|
+
*/
|
|
3921
|
+
scaling_factor: string;
|
|
3922
|
+
|
|
3923
|
+
/**
|
|
3924
|
+
* Second dimension value (optional)
|
|
3925
|
+
*/
|
|
3926
|
+
second_dimension_value?: string | null;
|
|
3927
|
+
}
|
|
3928
|
+
|
|
3929
|
+
/**
|
|
3930
|
+
* Configuration for a single tier entry with business logic
|
|
3931
|
+
*/
|
|
3932
|
+
export interface Tier {
|
|
3933
|
+
/**
|
|
3934
|
+
* Tier lower bound
|
|
3935
|
+
*/
|
|
3936
|
+
tier_lower_bound: string;
|
|
3937
|
+
|
|
3938
|
+
/**
|
|
3939
|
+
* Per unit amount
|
|
3940
|
+
*/
|
|
3941
|
+
unit_amount: string;
|
|
3942
|
+
}
|
|
3943
|
+
}
|
|
3944
|
+
}
|
|
3945
|
+
|
|
3394
3946
|
export interface NewFloatingScalableMatrixWithUnitPricingPrice {
|
|
3395
3947
|
/**
|
|
3396
3948
|
* The cadence to bill for this price on.
|
|
@@ -3407,6 +3959,9 @@ export interface NewFloatingScalableMatrixWithUnitPricingPrice {
|
|
|
3407
3959
|
*/
|
|
3408
3960
|
item_id: string;
|
|
3409
3961
|
|
|
3962
|
+
/**
|
|
3963
|
+
* The pricing model type
|
|
3964
|
+
*/
|
|
3410
3965
|
model_type: 'scalable_matrix_with_unit_pricing';
|
|
3411
3966
|
|
|
3412
3967
|
/**
|
|
@@ -3414,7 +3969,10 @@ export interface NewFloatingScalableMatrixWithUnitPricingPrice {
|
|
|
3414
3969
|
*/
|
|
3415
3970
|
name: string;
|
|
3416
3971
|
|
|
3417
|
-
|
|
3972
|
+
/**
|
|
3973
|
+
* Configuration for scalable_matrix_with_unit_pricing pricing
|
|
3974
|
+
*/
|
|
3975
|
+
scalable_matrix_with_unit_pricing_config: NewFloatingScalableMatrixWithUnitPricingPrice.ScalableMatrixWithUnitPricingConfig;
|
|
3418
3976
|
|
|
3419
3977
|
/**
|
|
3420
3978
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -3479,6 +4037,60 @@ export interface NewFloatingScalableMatrixWithUnitPricingPrice {
|
|
|
3479
4037
|
metadata?: { [key: string]: string | null } | null;
|
|
3480
4038
|
}
|
|
3481
4039
|
|
|
4040
|
+
export namespace NewFloatingScalableMatrixWithUnitPricingPrice {
|
|
4041
|
+
/**
|
|
4042
|
+
* Configuration for scalable_matrix_with_unit_pricing pricing
|
|
4043
|
+
*/
|
|
4044
|
+
export interface ScalableMatrixWithUnitPricingConfig {
|
|
4045
|
+
/**
|
|
4046
|
+
* Used to determine the unit rate
|
|
4047
|
+
*/
|
|
4048
|
+
first_dimension: string;
|
|
4049
|
+
|
|
4050
|
+
/**
|
|
4051
|
+
* Apply a scaling factor to each dimension
|
|
4052
|
+
*/
|
|
4053
|
+
matrix_scaling_factors: Array<ScalableMatrixWithUnitPricingConfig.MatrixScalingFactor>;
|
|
4054
|
+
|
|
4055
|
+
/**
|
|
4056
|
+
* The final unit price to rate against the output of the matrix
|
|
4057
|
+
*/
|
|
4058
|
+
unit_price: string;
|
|
4059
|
+
|
|
4060
|
+
/**
|
|
4061
|
+
* If true, the unit price will be prorated to the billing period
|
|
4062
|
+
*/
|
|
4063
|
+
prorate?: boolean | null;
|
|
4064
|
+
|
|
4065
|
+
/**
|
|
4066
|
+
* Used to determine the unit rate (optional)
|
|
4067
|
+
*/
|
|
4068
|
+
second_dimension?: string | null;
|
|
4069
|
+
}
|
|
4070
|
+
|
|
4071
|
+
export namespace ScalableMatrixWithUnitPricingConfig {
|
|
4072
|
+
/**
|
|
4073
|
+
* Configuration for a single matrix scaling factor
|
|
4074
|
+
*/
|
|
4075
|
+
export interface MatrixScalingFactor {
|
|
4076
|
+
/**
|
|
4077
|
+
* First dimension value
|
|
4078
|
+
*/
|
|
4079
|
+
first_dimension_value: string;
|
|
4080
|
+
|
|
4081
|
+
/**
|
|
4082
|
+
* Scaling factor
|
|
4083
|
+
*/
|
|
4084
|
+
scaling_factor: string;
|
|
4085
|
+
|
|
4086
|
+
/**
|
|
4087
|
+
* Second dimension value (optional)
|
|
4088
|
+
*/
|
|
4089
|
+
second_dimension_value?: string | null;
|
|
4090
|
+
}
|
|
4091
|
+
}
|
|
4092
|
+
}
|
|
4093
|
+
|
|
3482
4094
|
export interface NewFloatingThresholdTotalAmountPrice {
|
|
3483
4095
|
/**
|
|
3484
4096
|
* The cadence to bill for this price on.
|
|
@@ -3495,6 +4107,9 @@ export interface NewFloatingThresholdTotalAmountPrice {
|
|
|
3495
4107
|
*/
|
|
3496
4108
|
item_id: string;
|
|
3497
4109
|
|
|
4110
|
+
/**
|
|
4111
|
+
* The pricing model type
|
|
4112
|
+
*/
|
|
3498
4113
|
model_type: 'threshold_total_amount';
|
|
3499
4114
|
|
|
3500
4115
|
/**
|
|
@@ -3502,7 +4117,10 @@ export interface NewFloatingThresholdTotalAmountPrice {
|
|
|
3502
4117
|
*/
|
|
3503
4118
|
name: string;
|
|
3504
4119
|
|
|
3505
|
-
|
|
4120
|
+
/**
|
|
4121
|
+
* Configuration for threshold_total_amount pricing
|
|
4122
|
+
*/
|
|
4123
|
+
threshold_total_amount_config: NewFloatingThresholdTotalAmountPrice.ThresholdTotalAmountConfig;
|
|
3506
4124
|
|
|
3507
4125
|
/**
|
|
3508
4126
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -3567,6 +4185,41 @@ export interface NewFloatingThresholdTotalAmountPrice {
|
|
|
3567
4185
|
metadata?: { [key: string]: string | null } | null;
|
|
3568
4186
|
}
|
|
3569
4187
|
|
|
4188
|
+
export namespace NewFloatingThresholdTotalAmountPrice {
|
|
4189
|
+
/**
|
|
4190
|
+
* Configuration for threshold_total_amount pricing
|
|
4191
|
+
*/
|
|
4192
|
+
export interface ThresholdTotalAmountConfig {
|
|
4193
|
+
/**
|
|
4194
|
+
* When the quantity consumed passes a provided threshold, the configured total
|
|
4195
|
+
* will be charged
|
|
4196
|
+
*/
|
|
4197
|
+
consumption_table: Array<ThresholdTotalAmountConfig.ConsumptionTable>;
|
|
4198
|
+
|
|
4199
|
+
/**
|
|
4200
|
+
* If true, the unit price will be prorated to the billing period
|
|
4201
|
+
*/
|
|
4202
|
+
prorate?: boolean | null;
|
|
4203
|
+
}
|
|
4204
|
+
|
|
4205
|
+
export namespace ThresholdTotalAmountConfig {
|
|
4206
|
+
/**
|
|
4207
|
+
* Configuration for a single threshold
|
|
4208
|
+
*/
|
|
4209
|
+
export interface ConsumptionTable {
|
|
4210
|
+
/**
|
|
4211
|
+
* Quantity threshold
|
|
4212
|
+
*/
|
|
4213
|
+
threshold: string;
|
|
4214
|
+
|
|
4215
|
+
/**
|
|
4216
|
+
* Total amount for this threshold
|
|
4217
|
+
*/
|
|
4218
|
+
total_amount: string;
|
|
4219
|
+
}
|
|
4220
|
+
}
|
|
4221
|
+
}
|
|
4222
|
+
|
|
3570
4223
|
export interface NewFloatingTieredPackagePrice {
|
|
3571
4224
|
/**
|
|
3572
4225
|
* The cadence to bill for this price on.
|
|
@@ -3583,6 +4236,9 @@ export interface NewFloatingTieredPackagePrice {
|
|
|
3583
4236
|
*/
|
|
3584
4237
|
item_id: string;
|
|
3585
4238
|
|
|
4239
|
+
/**
|
|
4240
|
+
* The pricing model type
|
|
4241
|
+
*/
|
|
3586
4242
|
model_type: 'tiered_package';
|
|
3587
4243
|
|
|
3588
4244
|
/**
|
|
@@ -3590,7 +4246,10 @@ export interface NewFloatingTieredPackagePrice {
|
|
|
3590
4246
|
*/
|
|
3591
4247
|
name: string;
|
|
3592
4248
|
|
|
3593
|
-
|
|
4249
|
+
/**
|
|
4250
|
+
* Configuration for tiered_package pricing
|
|
4251
|
+
*/
|
|
4252
|
+
tiered_package_config: NewFloatingTieredPackagePrice.TieredPackageConfig;
|
|
3594
4253
|
|
|
3595
4254
|
/**
|
|
3596
4255
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -3655,6 +4314,43 @@ export interface NewFloatingTieredPackagePrice {
|
|
|
3655
4314
|
metadata?: { [key: string]: string | null } | null;
|
|
3656
4315
|
}
|
|
3657
4316
|
|
|
4317
|
+
export namespace NewFloatingTieredPackagePrice {
|
|
4318
|
+
/**
|
|
4319
|
+
* Configuration for tiered_package pricing
|
|
4320
|
+
*/
|
|
4321
|
+
export interface TieredPackageConfig {
|
|
4322
|
+
/**
|
|
4323
|
+
* Package size
|
|
4324
|
+
*/
|
|
4325
|
+
package_size: string;
|
|
4326
|
+
|
|
4327
|
+
/**
|
|
4328
|
+
* Apply tiered pricing after rounding up the quantity to the package size. Tiers
|
|
4329
|
+
* are defined using exclusive lower bounds. The tier bounds are defined based on
|
|
4330
|
+
* the total quantity rather than the number of packages, so they must be multiples
|
|
4331
|
+
* of the package size.
|
|
4332
|
+
*/
|
|
4333
|
+
tiers: Array<TieredPackageConfig.Tier>;
|
|
4334
|
+
}
|
|
4335
|
+
|
|
4336
|
+
export namespace TieredPackageConfig {
|
|
4337
|
+
/**
|
|
4338
|
+
* Configuration for a single tier with business logic
|
|
4339
|
+
*/
|
|
4340
|
+
export interface Tier {
|
|
4341
|
+
/**
|
|
4342
|
+
* Price per package
|
|
4343
|
+
*/
|
|
4344
|
+
per_unit: string;
|
|
4345
|
+
|
|
4346
|
+
/**
|
|
4347
|
+
* Tier lower bound
|
|
4348
|
+
*/
|
|
4349
|
+
tier_lower_bound: string;
|
|
4350
|
+
}
|
|
4351
|
+
}
|
|
4352
|
+
}
|
|
4353
|
+
|
|
3658
4354
|
export interface NewFloatingTieredPackageWithMinimumPrice {
|
|
3659
4355
|
/**
|
|
3660
4356
|
* The cadence to bill for this price on.
|
|
@@ -3671,6 +4367,9 @@ export interface NewFloatingTieredPackageWithMinimumPrice {
|
|
|
3671
4367
|
*/
|
|
3672
4368
|
item_id: string;
|
|
3673
4369
|
|
|
4370
|
+
/**
|
|
4371
|
+
* The pricing model type
|
|
4372
|
+
*/
|
|
3674
4373
|
model_type: 'tiered_package_with_minimum';
|
|
3675
4374
|
|
|
3676
4375
|
/**
|
|
@@ -3678,7 +4377,10 @@ export interface NewFloatingTieredPackageWithMinimumPrice {
|
|
|
3678
4377
|
*/
|
|
3679
4378
|
name: string;
|
|
3680
4379
|
|
|
3681
|
-
|
|
4380
|
+
/**
|
|
4381
|
+
* Configuration for tiered_package_with_minimum pricing
|
|
4382
|
+
*/
|
|
4383
|
+
tiered_package_with_minimum_config: NewFloatingTieredPackageWithMinimumPrice.TieredPackageWithMinimumConfig;
|
|
3682
4384
|
|
|
3683
4385
|
/**
|
|
3684
4386
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -3743,6 +4445,46 @@ export interface NewFloatingTieredPackageWithMinimumPrice {
|
|
|
3743
4445
|
metadata?: { [key: string]: string | null } | null;
|
|
3744
4446
|
}
|
|
3745
4447
|
|
|
4448
|
+
export namespace NewFloatingTieredPackageWithMinimumPrice {
|
|
4449
|
+
/**
|
|
4450
|
+
* Configuration for tiered_package_with_minimum pricing
|
|
4451
|
+
*/
|
|
4452
|
+
export interface TieredPackageWithMinimumConfig {
|
|
4453
|
+
/**
|
|
4454
|
+
* Package size
|
|
4455
|
+
*/
|
|
4456
|
+
package_size: number;
|
|
4457
|
+
|
|
4458
|
+
/**
|
|
4459
|
+
* Apply tiered pricing after rounding up the quantity to the package size. Tiers
|
|
4460
|
+
* are defined using exclusive lower bounds.
|
|
4461
|
+
*/
|
|
4462
|
+
tiers: Array<TieredPackageWithMinimumConfig.Tier>;
|
|
4463
|
+
}
|
|
4464
|
+
|
|
4465
|
+
export namespace TieredPackageWithMinimumConfig {
|
|
4466
|
+
/**
|
|
4467
|
+
* Configuration for a single tier
|
|
4468
|
+
*/
|
|
4469
|
+
export interface Tier {
|
|
4470
|
+
/**
|
|
4471
|
+
* Minimum amount
|
|
4472
|
+
*/
|
|
4473
|
+
minimum_amount: string;
|
|
4474
|
+
|
|
4475
|
+
/**
|
|
4476
|
+
* Price per package
|
|
4477
|
+
*/
|
|
4478
|
+
per_unit: string;
|
|
4479
|
+
|
|
4480
|
+
/**
|
|
4481
|
+
* Tier lower bound
|
|
4482
|
+
*/
|
|
4483
|
+
tier_lower_bound: string;
|
|
4484
|
+
}
|
|
4485
|
+
}
|
|
4486
|
+
}
|
|
4487
|
+
|
|
3746
4488
|
export interface NewFloatingTieredPrice {
|
|
3747
4489
|
/**
|
|
3748
4490
|
* The cadence to bill for this price on.
|
|
@@ -3759,6 +4501,9 @@ export interface NewFloatingTieredPrice {
|
|
|
3759
4501
|
*/
|
|
3760
4502
|
item_id: string;
|
|
3761
4503
|
|
|
4504
|
+
/**
|
|
4505
|
+
* The pricing model type
|
|
4506
|
+
*/
|
|
3762
4507
|
model_type: 'tiered';
|
|
3763
4508
|
|
|
3764
4509
|
/**
|
|
@@ -3766,6 +4511,9 @@ export interface NewFloatingTieredPrice {
|
|
|
3766
4511
|
*/
|
|
3767
4512
|
name: string;
|
|
3768
4513
|
|
|
4514
|
+
/**
|
|
4515
|
+
* Configuration for tiered pricing
|
|
4516
|
+
*/
|
|
3769
4517
|
tiered_config: TieredConfig;
|
|
3770
4518
|
|
|
3771
4519
|
/**
|
|
@@ -3847,6 +4595,9 @@ export interface NewFloatingTieredWithMinimumPrice {
|
|
|
3847
4595
|
*/
|
|
3848
4596
|
item_id: string;
|
|
3849
4597
|
|
|
4598
|
+
/**
|
|
4599
|
+
* The pricing model type
|
|
4600
|
+
*/
|
|
3850
4601
|
model_type: 'tiered_with_minimum';
|
|
3851
4602
|
|
|
3852
4603
|
/**
|
|
@@ -3854,7 +4605,10 @@ export interface NewFloatingTieredWithMinimumPrice {
|
|
|
3854
4605
|
*/
|
|
3855
4606
|
name: string;
|
|
3856
4607
|
|
|
3857
|
-
|
|
4608
|
+
/**
|
|
4609
|
+
* Configuration for tiered_with_minimum pricing
|
|
4610
|
+
*/
|
|
4611
|
+
tiered_with_minimum_config: NewFloatingTieredWithMinimumPrice.TieredWithMinimumConfig;
|
|
3858
4612
|
|
|
3859
4613
|
/**
|
|
3860
4614
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -3919,6 +4673,51 @@ export interface NewFloatingTieredWithMinimumPrice {
|
|
|
3919
4673
|
metadata?: { [key: string]: string | null } | null;
|
|
3920
4674
|
}
|
|
3921
4675
|
|
|
4676
|
+
export namespace NewFloatingTieredWithMinimumPrice {
|
|
4677
|
+
/**
|
|
4678
|
+
* Configuration for tiered_with_minimum pricing
|
|
4679
|
+
*/
|
|
4680
|
+
export interface TieredWithMinimumConfig {
|
|
4681
|
+
/**
|
|
4682
|
+
* Tiered pricing with a minimum amount dependent on the volume tier. Tiers are
|
|
4683
|
+
* defined using exclusive lower bounds.
|
|
4684
|
+
*/
|
|
4685
|
+
tiers: Array<TieredWithMinimumConfig.Tier>;
|
|
4686
|
+
|
|
4687
|
+
/**
|
|
4688
|
+
* If true, tiers with an accrued amount of 0 will not be included in the rating.
|
|
4689
|
+
*/
|
|
4690
|
+
hide_zero_amount_tiers?: boolean;
|
|
4691
|
+
|
|
4692
|
+
/**
|
|
4693
|
+
* If true, the unit price will be prorated to the billing period
|
|
4694
|
+
*/
|
|
4695
|
+
prorate?: boolean;
|
|
4696
|
+
}
|
|
4697
|
+
|
|
4698
|
+
export namespace TieredWithMinimumConfig {
|
|
4699
|
+
/**
|
|
4700
|
+
* Configuration for a single tier
|
|
4701
|
+
*/
|
|
4702
|
+
export interface Tier {
|
|
4703
|
+
/**
|
|
4704
|
+
* Minimum amount
|
|
4705
|
+
*/
|
|
4706
|
+
minimum_amount: string;
|
|
4707
|
+
|
|
4708
|
+
/**
|
|
4709
|
+
* Tier lower bound
|
|
4710
|
+
*/
|
|
4711
|
+
tier_lower_bound: string;
|
|
4712
|
+
|
|
4713
|
+
/**
|
|
4714
|
+
* Per unit amount
|
|
4715
|
+
*/
|
|
4716
|
+
unit_amount: string;
|
|
4717
|
+
}
|
|
4718
|
+
}
|
|
4719
|
+
}
|
|
4720
|
+
|
|
3922
4721
|
export interface NewFloatingTieredWithProrationPrice {
|
|
3923
4722
|
/**
|
|
3924
4723
|
* The cadence to bill for this price on.
|
|
@@ -3935,6 +4734,9 @@ export interface NewFloatingTieredWithProrationPrice {
|
|
|
3935
4734
|
*/
|
|
3936
4735
|
item_id: string;
|
|
3937
4736
|
|
|
4737
|
+
/**
|
|
4738
|
+
* The pricing model type
|
|
4739
|
+
*/
|
|
3938
4740
|
model_type: 'tiered_with_proration';
|
|
3939
4741
|
|
|
3940
4742
|
/**
|
|
@@ -3942,7 +4744,10 @@ export interface NewFloatingTieredWithProrationPrice {
|
|
|
3942
4744
|
*/
|
|
3943
4745
|
name: string;
|
|
3944
4746
|
|
|
3945
|
-
|
|
4747
|
+
/**
|
|
4748
|
+
* Configuration for tiered_with_proration pricing
|
|
4749
|
+
*/
|
|
4750
|
+
tiered_with_proration_config: NewFloatingTieredWithProrationPrice.TieredWithProrationConfig;
|
|
3946
4751
|
|
|
3947
4752
|
/**
|
|
3948
4753
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -4007,13 +4812,43 @@ export interface NewFloatingTieredWithProrationPrice {
|
|
|
4007
4812
|
metadata?: { [key: string]: string | null } | null;
|
|
4008
4813
|
}
|
|
4009
4814
|
|
|
4010
|
-
export
|
|
4815
|
+
export namespace NewFloatingTieredWithProrationPrice {
|
|
4011
4816
|
/**
|
|
4012
|
-
*
|
|
4817
|
+
* Configuration for tiered_with_proration pricing
|
|
4013
4818
|
*/
|
|
4014
|
-
|
|
4819
|
+
export interface TieredWithProrationConfig {
|
|
4820
|
+
/**
|
|
4821
|
+
* Tiers for rating based on total usage quantities into the specified tier with
|
|
4822
|
+
* proration
|
|
4823
|
+
*/
|
|
4824
|
+
tiers: Array<TieredWithProrationConfig.Tier>;
|
|
4825
|
+
}
|
|
4015
4826
|
|
|
4016
|
-
|
|
4827
|
+
export namespace TieredWithProrationConfig {
|
|
4828
|
+
/**
|
|
4829
|
+
* Configuration for a single tiered with proration tier
|
|
4830
|
+
*/
|
|
4831
|
+
export interface Tier {
|
|
4832
|
+
/**
|
|
4833
|
+
* Inclusive tier starting value
|
|
4834
|
+
*/
|
|
4835
|
+
tier_lower_bound: string;
|
|
4836
|
+
|
|
4837
|
+
/**
|
|
4838
|
+
* Amount per unit
|
|
4839
|
+
*/
|
|
4840
|
+
unit_amount: string;
|
|
4841
|
+
}
|
|
4842
|
+
}
|
|
4843
|
+
}
|
|
4844
|
+
|
|
4845
|
+
export interface NewFloatingUnitPrice {
|
|
4846
|
+
/**
|
|
4847
|
+
* The cadence to bill for this price on.
|
|
4848
|
+
*/
|
|
4849
|
+
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
4850
|
+
|
|
4851
|
+
/**
|
|
4017
4852
|
* An ISO 4217 currency string for which this price is billed in.
|
|
4018
4853
|
*/
|
|
4019
4854
|
currency: string;
|
|
@@ -4023,6 +4858,9 @@ export interface NewFloatingUnitPrice {
|
|
|
4023
4858
|
*/
|
|
4024
4859
|
item_id: string;
|
|
4025
4860
|
|
|
4861
|
+
/**
|
|
4862
|
+
* The pricing model type
|
|
4863
|
+
*/
|
|
4026
4864
|
model_type: 'unit';
|
|
4027
4865
|
|
|
4028
4866
|
/**
|
|
@@ -4030,6 +4868,9 @@ export interface NewFloatingUnitPrice {
|
|
|
4030
4868
|
*/
|
|
4031
4869
|
name: string;
|
|
4032
4870
|
|
|
4871
|
+
/**
|
|
4872
|
+
* Configuration for unit pricing
|
|
4873
|
+
*/
|
|
4033
4874
|
unit_config: UnitConfig;
|
|
4034
4875
|
|
|
4035
4876
|
/**
|
|
@@ -4111,6 +4952,9 @@ export interface NewFloatingUnitWithPercentPrice {
|
|
|
4111
4952
|
*/
|
|
4112
4953
|
item_id: string;
|
|
4113
4954
|
|
|
4955
|
+
/**
|
|
4956
|
+
* The pricing model type
|
|
4957
|
+
*/
|
|
4114
4958
|
model_type: 'unit_with_percent';
|
|
4115
4959
|
|
|
4116
4960
|
/**
|
|
@@ -4118,7 +4962,10 @@ export interface NewFloatingUnitWithPercentPrice {
|
|
|
4118
4962
|
*/
|
|
4119
4963
|
name: string;
|
|
4120
4964
|
|
|
4121
|
-
|
|
4965
|
+
/**
|
|
4966
|
+
* Configuration for unit_with_percent pricing
|
|
4967
|
+
*/
|
|
4968
|
+
unit_with_percent_config: NewFloatingUnitWithPercentPrice.UnitWithPercentConfig;
|
|
4122
4969
|
|
|
4123
4970
|
/**
|
|
4124
4971
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -4183,6 +5030,23 @@ export interface NewFloatingUnitWithPercentPrice {
|
|
|
4183
5030
|
metadata?: { [key: string]: string | null } | null;
|
|
4184
5031
|
}
|
|
4185
5032
|
|
|
5033
|
+
export namespace NewFloatingUnitWithPercentPrice {
|
|
5034
|
+
/**
|
|
5035
|
+
* Configuration for unit_with_percent pricing
|
|
5036
|
+
*/
|
|
5037
|
+
export interface UnitWithPercentConfig {
|
|
5038
|
+
/**
|
|
5039
|
+
* What percent, out of 100, of the calculated total to charge
|
|
5040
|
+
*/
|
|
5041
|
+
percent: string;
|
|
5042
|
+
|
|
5043
|
+
/**
|
|
5044
|
+
* Rate per unit of usage
|
|
5045
|
+
*/
|
|
5046
|
+
unit_amount: string;
|
|
5047
|
+
}
|
|
5048
|
+
}
|
|
5049
|
+
|
|
4186
5050
|
export interface NewFloatingUnitWithProrationPrice {
|
|
4187
5051
|
/**
|
|
4188
5052
|
* The cadence to bill for this price on.
|
|
@@ -4199,6 +5063,9 @@ export interface NewFloatingUnitWithProrationPrice {
|
|
|
4199
5063
|
*/
|
|
4200
5064
|
item_id: string;
|
|
4201
5065
|
|
|
5066
|
+
/**
|
|
5067
|
+
* The pricing model type
|
|
5068
|
+
*/
|
|
4202
5069
|
model_type: 'unit_with_proration';
|
|
4203
5070
|
|
|
4204
5071
|
/**
|
|
@@ -4206,7 +5073,10 @@ export interface NewFloatingUnitWithProrationPrice {
|
|
|
4206
5073
|
*/
|
|
4207
5074
|
name: string;
|
|
4208
5075
|
|
|
4209
|
-
|
|
5076
|
+
/**
|
|
5077
|
+
* Configuration for unit_with_proration pricing
|
|
5078
|
+
*/
|
|
5079
|
+
unit_with_proration_config: NewFloatingUnitWithProrationPrice.UnitWithProrationConfig;
|
|
4210
5080
|
|
|
4211
5081
|
/**
|
|
4212
5082
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -4271,6 +5141,18 @@ export interface NewFloatingUnitWithProrationPrice {
|
|
|
4271
5141
|
metadata?: { [key: string]: string | null } | null;
|
|
4272
5142
|
}
|
|
4273
5143
|
|
|
5144
|
+
export namespace NewFloatingUnitWithProrationPrice {
|
|
5145
|
+
/**
|
|
5146
|
+
* Configuration for unit_with_proration pricing
|
|
5147
|
+
*/
|
|
5148
|
+
export interface UnitWithProrationConfig {
|
|
5149
|
+
/**
|
|
5150
|
+
* Rate per unit of usage
|
|
5151
|
+
*/
|
|
5152
|
+
unit_amount: string;
|
|
5153
|
+
}
|
|
5154
|
+
}
|
|
5155
|
+
|
|
4274
5156
|
export interface NewMaximum {
|
|
4275
5157
|
adjustment_type: 'maximum';
|
|
4276
5158
|
|
|
@@ -4403,6 +5285,9 @@ export interface NewPercentageDiscount {
|
|
|
4403
5285
|
}
|
|
4404
5286
|
|
|
4405
5287
|
export interface NewPlanBulkPrice {
|
|
5288
|
+
/**
|
|
5289
|
+
* Configuration for bulk pricing
|
|
5290
|
+
*/
|
|
4406
5291
|
bulk_config: BulkConfig;
|
|
4407
5292
|
|
|
4408
5293
|
/**
|
|
@@ -4415,6 +5300,9 @@ export interface NewPlanBulkPrice {
|
|
|
4415
5300
|
*/
|
|
4416
5301
|
item_id: string;
|
|
4417
5302
|
|
|
5303
|
+
/**
|
|
5304
|
+
* The pricing model type
|
|
5305
|
+
*/
|
|
4418
5306
|
model_type: 'bulk';
|
|
4419
5307
|
|
|
4420
5308
|
/**
|
|
@@ -4498,7 +5386,10 @@ export interface NewPlanBulkPrice {
|
|
|
4498
5386
|
}
|
|
4499
5387
|
|
|
4500
5388
|
export interface NewPlanBulkWithProrationPrice {
|
|
4501
|
-
|
|
5389
|
+
/**
|
|
5390
|
+
* Configuration for bulk_with_proration pricing
|
|
5391
|
+
*/
|
|
5392
|
+
bulk_with_proration_config: NewPlanBulkWithProrationPrice.BulkWithProrationConfig;
|
|
4502
5393
|
|
|
4503
5394
|
/**
|
|
4504
5395
|
* The cadence to bill for this price on.
|
|
@@ -4510,6 +5401,9 @@ export interface NewPlanBulkWithProrationPrice {
|
|
|
4510
5401
|
*/
|
|
4511
5402
|
item_id: string;
|
|
4512
5403
|
|
|
5404
|
+
/**
|
|
5405
|
+
* The pricing model type
|
|
5406
|
+
*/
|
|
4513
5407
|
model_type: 'bulk_with_proration';
|
|
4514
5408
|
|
|
4515
5409
|
/**
|
|
@@ -4592,19 +5486,54 @@ export interface NewPlanBulkWithProrationPrice {
|
|
|
4592
5486
|
reference_id?: string | null;
|
|
4593
5487
|
}
|
|
4594
5488
|
|
|
5489
|
+
export namespace NewPlanBulkWithProrationPrice {
|
|
5490
|
+
/**
|
|
5491
|
+
* Configuration for bulk_with_proration pricing
|
|
5492
|
+
*/
|
|
5493
|
+
export interface BulkWithProrationConfig {
|
|
5494
|
+
/**
|
|
5495
|
+
* Bulk tiers for rating based on total usage volume
|
|
5496
|
+
*/
|
|
5497
|
+
tiers: Array<BulkWithProrationConfig.Tier>;
|
|
5498
|
+
}
|
|
5499
|
+
|
|
5500
|
+
export namespace BulkWithProrationConfig {
|
|
5501
|
+
/**
|
|
5502
|
+
* Configuration for a single bulk pricing tier with proration
|
|
5503
|
+
*/
|
|
5504
|
+
export interface Tier {
|
|
5505
|
+
/**
|
|
5506
|
+
* Cost per unit
|
|
5507
|
+
*/
|
|
5508
|
+
unit_amount: string;
|
|
5509
|
+
|
|
5510
|
+
/**
|
|
5511
|
+
* The lower bound for this tier
|
|
5512
|
+
*/
|
|
5513
|
+
tier_lower_bound?: string | null;
|
|
5514
|
+
}
|
|
5515
|
+
}
|
|
5516
|
+
}
|
|
5517
|
+
|
|
4595
5518
|
export interface NewPlanCumulativeGroupedBulkPrice {
|
|
4596
5519
|
/**
|
|
4597
5520
|
* The cadence to bill for this price on.
|
|
4598
5521
|
*/
|
|
4599
5522
|
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
4600
5523
|
|
|
4601
|
-
|
|
5524
|
+
/**
|
|
5525
|
+
* Configuration for cumulative_grouped_bulk pricing
|
|
5526
|
+
*/
|
|
5527
|
+
cumulative_grouped_bulk_config: NewPlanCumulativeGroupedBulkPrice.CumulativeGroupedBulkConfig;
|
|
4602
5528
|
|
|
4603
5529
|
/**
|
|
4604
5530
|
* The id of the item the price will be associated with.
|
|
4605
5531
|
*/
|
|
4606
5532
|
item_id: string;
|
|
4607
5533
|
|
|
5534
|
+
/**
|
|
5535
|
+
* The pricing model type
|
|
5536
|
+
*/
|
|
4608
5537
|
model_type: 'cumulative_grouped_bulk';
|
|
4609
5538
|
|
|
4610
5539
|
/**
|
|
@@ -4687,19 +5616,64 @@ export interface NewPlanCumulativeGroupedBulkPrice {
|
|
|
4687
5616
|
reference_id?: string | null;
|
|
4688
5617
|
}
|
|
4689
5618
|
|
|
5619
|
+
export namespace NewPlanCumulativeGroupedBulkPrice {
|
|
5620
|
+
/**
|
|
5621
|
+
* Configuration for cumulative_grouped_bulk pricing
|
|
5622
|
+
*/
|
|
5623
|
+
export interface CumulativeGroupedBulkConfig {
|
|
5624
|
+
/**
|
|
5625
|
+
* Each tier lower bound must have the same group of values.
|
|
5626
|
+
*/
|
|
5627
|
+
dimension_values: Array<CumulativeGroupedBulkConfig.DimensionValue>;
|
|
5628
|
+
|
|
5629
|
+
/**
|
|
5630
|
+
* Grouping key name
|
|
5631
|
+
*/
|
|
5632
|
+
group: string;
|
|
5633
|
+
}
|
|
5634
|
+
|
|
5635
|
+
export namespace CumulativeGroupedBulkConfig {
|
|
5636
|
+
/**
|
|
5637
|
+
* Configuration for a dimension value entry
|
|
5638
|
+
*/
|
|
5639
|
+
export interface DimensionValue {
|
|
5640
|
+
/**
|
|
5641
|
+
* Grouping key value
|
|
5642
|
+
*/
|
|
5643
|
+
grouping_key: string;
|
|
5644
|
+
|
|
5645
|
+
/**
|
|
5646
|
+
* Tier lower bound
|
|
5647
|
+
*/
|
|
5648
|
+
tier_lower_bound: string;
|
|
5649
|
+
|
|
5650
|
+
/**
|
|
5651
|
+
* Unit amount for this combination
|
|
5652
|
+
*/
|
|
5653
|
+
unit_amount: string;
|
|
5654
|
+
}
|
|
5655
|
+
}
|
|
5656
|
+
}
|
|
5657
|
+
|
|
4690
5658
|
export interface NewPlanGroupedAllocationPrice {
|
|
4691
5659
|
/**
|
|
4692
5660
|
* The cadence to bill for this price on.
|
|
4693
5661
|
*/
|
|
4694
5662
|
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
4695
5663
|
|
|
4696
|
-
|
|
5664
|
+
/**
|
|
5665
|
+
* Configuration for grouped_allocation pricing
|
|
5666
|
+
*/
|
|
5667
|
+
grouped_allocation_config: NewPlanGroupedAllocationPrice.GroupedAllocationConfig;
|
|
4697
5668
|
|
|
4698
5669
|
/**
|
|
4699
5670
|
* The id of the item the price will be associated with.
|
|
4700
5671
|
*/
|
|
4701
5672
|
item_id: string;
|
|
4702
5673
|
|
|
5674
|
+
/**
|
|
5675
|
+
* The pricing model type
|
|
5676
|
+
*/
|
|
4703
5677
|
model_type: 'grouped_allocation';
|
|
4704
5678
|
|
|
4705
5679
|
/**
|
|
@@ -4782,19 +5756,47 @@ export interface NewPlanGroupedAllocationPrice {
|
|
|
4782
5756
|
reference_id?: string | null;
|
|
4783
5757
|
}
|
|
4784
5758
|
|
|
5759
|
+
export namespace NewPlanGroupedAllocationPrice {
|
|
5760
|
+
/**
|
|
5761
|
+
* Configuration for grouped_allocation pricing
|
|
5762
|
+
*/
|
|
5763
|
+
export interface GroupedAllocationConfig {
|
|
5764
|
+
/**
|
|
5765
|
+
* Usage allocation per group
|
|
5766
|
+
*/
|
|
5767
|
+
allocation: string;
|
|
5768
|
+
|
|
5769
|
+
/**
|
|
5770
|
+
* How to determine the groups that should each be allocated some quantity
|
|
5771
|
+
*/
|
|
5772
|
+
grouping_key: string;
|
|
5773
|
+
|
|
5774
|
+
/**
|
|
5775
|
+
* Unit rate for post-allocation
|
|
5776
|
+
*/
|
|
5777
|
+
overage_unit_rate: string;
|
|
5778
|
+
}
|
|
5779
|
+
}
|
|
5780
|
+
|
|
4785
5781
|
export interface NewPlanGroupedTieredPackagePrice {
|
|
4786
5782
|
/**
|
|
4787
5783
|
* The cadence to bill for this price on.
|
|
4788
5784
|
*/
|
|
4789
5785
|
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
4790
5786
|
|
|
4791
|
-
|
|
5787
|
+
/**
|
|
5788
|
+
* Configuration for grouped_tiered_package pricing
|
|
5789
|
+
*/
|
|
5790
|
+
grouped_tiered_package_config: NewPlanGroupedTieredPackagePrice.GroupedTieredPackageConfig;
|
|
4792
5791
|
|
|
4793
5792
|
/**
|
|
4794
5793
|
* The id of the item the price will be associated with.
|
|
4795
5794
|
*/
|
|
4796
5795
|
item_id: string;
|
|
4797
5796
|
|
|
5797
|
+
/**
|
|
5798
|
+
* The pricing model type
|
|
5799
|
+
*/
|
|
4798
5800
|
model_type: 'grouped_tiered_package';
|
|
4799
5801
|
|
|
4800
5802
|
/**
|
|
@@ -4877,19 +5879,65 @@ export interface NewPlanGroupedTieredPackagePrice {
|
|
|
4877
5879
|
reference_id?: string | null;
|
|
4878
5880
|
}
|
|
4879
5881
|
|
|
5882
|
+
export namespace NewPlanGroupedTieredPackagePrice {
|
|
5883
|
+
/**
|
|
5884
|
+
* Configuration for grouped_tiered_package pricing
|
|
5885
|
+
*/
|
|
5886
|
+
export interface GroupedTieredPackageConfig {
|
|
5887
|
+
/**
|
|
5888
|
+
* The event property used to group before tiering
|
|
5889
|
+
*/
|
|
5890
|
+
grouping_key: string;
|
|
5891
|
+
|
|
5892
|
+
/**
|
|
5893
|
+
* Package size
|
|
5894
|
+
*/
|
|
5895
|
+
package_size: string;
|
|
5896
|
+
|
|
5897
|
+
/**
|
|
5898
|
+
* Apply tiered pricing after rounding up the quantity to the package size. Tiers
|
|
5899
|
+
* are defined using exclusive lower bounds.
|
|
5900
|
+
*/
|
|
5901
|
+
tiers: Array<GroupedTieredPackageConfig.Tier>;
|
|
5902
|
+
}
|
|
5903
|
+
|
|
5904
|
+
export namespace GroupedTieredPackageConfig {
|
|
5905
|
+
/**
|
|
5906
|
+
* Configuration for a single tier
|
|
5907
|
+
*/
|
|
5908
|
+
export interface Tier {
|
|
5909
|
+
/**
|
|
5910
|
+
* Price per package
|
|
5911
|
+
*/
|
|
5912
|
+
per_unit: string;
|
|
5913
|
+
|
|
5914
|
+
/**
|
|
5915
|
+
* Tier lower bound
|
|
5916
|
+
*/
|
|
5917
|
+
tier_lower_bound: string;
|
|
5918
|
+
}
|
|
5919
|
+
}
|
|
5920
|
+
}
|
|
5921
|
+
|
|
4880
5922
|
export interface NewPlanGroupedTieredPrice {
|
|
4881
5923
|
/**
|
|
4882
5924
|
* The cadence to bill for this price on.
|
|
4883
5925
|
*/
|
|
4884
5926
|
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
4885
5927
|
|
|
4886
|
-
|
|
5928
|
+
/**
|
|
5929
|
+
* Configuration for grouped_tiered pricing
|
|
5930
|
+
*/
|
|
5931
|
+
grouped_tiered_config: NewPlanGroupedTieredPrice.GroupedTieredConfig;
|
|
4887
5932
|
|
|
4888
5933
|
/**
|
|
4889
5934
|
* The id of the item the price will be associated with.
|
|
4890
5935
|
*/
|
|
4891
5936
|
item_id: string;
|
|
4892
5937
|
|
|
5938
|
+
/**
|
|
5939
|
+
* The pricing model type
|
|
5940
|
+
*/
|
|
4893
5941
|
model_type: 'grouped_tiered';
|
|
4894
5942
|
|
|
4895
5943
|
/**
|
|
@@ -4972,19 +6020,60 @@ export interface NewPlanGroupedTieredPrice {
|
|
|
4972
6020
|
reference_id?: string | null;
|
|
4973
6021
|
}
|
|
4974
6022
|
|
|
6023
|
+
export namespace NewPlanGroupedTieredPrice {
|
|
6024
|
+
/**
|
|
6025
|
+
* Configuration for grouped_tiered pricing
|
|
6026
|
+
*/
|
|
6027
|
+
export interface GroupedTieredConfig {
|
|
6028
|
+
/**
|
|
6029
|
+
* The billable metric property used to group before tiering
|
|
6030
|
+
*/
|
|
6031
|
+
grouping_key: string;
|
|
6032
|
+
|
|
6033
|
+
/**
|
|
6034
|
+
* Apply tiered pricing to each segment generated after grouping with the provided
|
|
6035
|
+
* key
|
|
6036
|
+
*/
|
|
6037
|
+
tiers: Array<GroupedTieredConfig.Tier>;
|
|
6038
|
+
}
|
|
6039
|
+
|
|
6040
|
+
export namespace GroupedTieredConfig {
|
|
6041
|
+
/**
|
|
6042
|
+
* Configuration for a single tier
|
|
6043
|
+
*/
|
|
6044
|
+
export interface Tier {
|
|
6045
|
+
/**
|
|
6046
|
+
* Tier lower bound
|
|
6047
|
+
*/
|
|
6048
|
+
tier_lower_bound: string;
|
|
6049
|
+
|
|
6050
|
+
/**
|
|
6051
|
+
* Per unit amount
|
|
6052
|
+
*/
|
|
6053
|
+
unit_amount: string;
|
|
6054
|
+
}
|
|
6055
|
+
}
|
|
6056
|
+
}
|
|
6057
|
+
|
|
4975
6058
|
export interface NewPlanGroupedWithMeteredMinimumPrice {
|
|
4976
6059
|
/**
|
|
4977
6060
|
* The cadence to bill for this price on.
|
|
4978
6061
|
*/
|
|
4979
6062
|
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
4980
6063
|
|
|
4981
|
-
|
|
6064
|
+
/**
|
|
6065
|
+
* Configuration for grouped_with_metered_minimum pricing
|
|
6066
|
+
*/
|
|
6067
|
+
grouped_with_metered_minimum_config: NewPlanGroupedWithMeteredMinimumPrice.GroupedWithMeteredMinimumConfig;
|
|
4982
6068
|
|
|
4983
6069
|
/**
|
|
4984
6070
|
* The id of the item the price will be associated with.
|
|
4985
6071
|
*/
|
|
4986
6072
|
item_id: string;
|
|
4987
6073
|
|
|
6074
|
+
/**
|
|
6075
|
+
* The pricing model type
|
|
6076
|
+
*/
|
|
4988
6077
|
model_type: 'grouped_with_metered_minimum';
|
|
4989
6078
|
|
|
4990
6079
|
/**
|
|
@@ -5067,19 +6156,96 @@ export interface NewPlanGroupedWithMeteredMinimumPrice {
|
|
|
5067
6156
|
reference_id?: string | null;
|
|
5068
6157
|
}
|
|
5069
6158
|
|
|
6159
|
+
export namespace NewPlanGroupedWithMeteredMinimumPrice {
|
|
6160
|
+
/**
|
|
6161
|
+
* Configuration for grouped_with_metered_minimum pricing
|
|
6162
|
+
*/
|
|
6163
|
+
export interface GroupedWithMeteredMinimumConfig {
|
|
6164
|
+
/**
|
|
6165
|
+
* Used to partition the usage into groups. The minimum amount is applied to each
|
|
6166
|
+
* group.
|
|
6167
|
+
*/
|
|
6168
|
+
grouping_key: string;
|
|
6169
|
+
|
|
6170
|
+
/**
|
|
6171
|
+
* The minimum amount to charge per group per unit
|
|
6172
|
+
*/
|
|
6173
|
+
minimum_unit_amount: string;
|
|
6174
|
+
|
|
6175
|
+
/**
|
|
6176
|
+
* Used to determine the unit rate
|
|
6177
|
+
*/
|
|
6178
|
+
pricing_key: string;
|
|
6179
|
+
|
|
6180
|
+
/**
|
|
6181
|
+
* Scale the unit rates by the scaling factor.
|
|
6182
|
+
*/
|
|
6183
|
+
scaling_factors: Array<GroupedWithMeteredMinimumConfig.ScalingFactor>;
|
|
6184
|
+
|
|
6185
|
+
/**
|
|
6186
|
+
* Used to determine the unit rate scaling factor
|
|
6187
|
+
*/
|
|
6188
|
+
scaling_key: string;
|
|
6189
|
+
|
|
6190
|
+
/**
|
|
6191
|
+
* Apply per unit pricing to each pricing value. The minimum amount is applied any
|
|
6192
|
+
* unmatched usage.
|
|
6193
|
+
*/
|
|
6194
|
+
unit_amounts: Array<GroupedWithMeteredMinimumConfig.UnitAmount>;
|
|
6195
|
+
}
|
|
6196
|
+
|
|
6197
|
+
export namespace GroupedWithMeteredMinimumConfig {
|
|
6198
|
+
/**
|
|
6199
|
+
* Configuration for a scaling factor
|
|
6200
|
+
*/
|
|
6201
|
+
export interface ScalingFactor {
|
|
6202
|
+
/**
|
|
6203
|
+
* Scaling factor
|
|
6204
|
+
*/
|
|
6205
|
+
scaling_factor: string;
|
|
6206
|
+
|
|
6207
|
+
/**
|
|
6208
|
+
* Scaling value
|
|
6209
|
+
*/
|
|
6210
|
+
scaling_value: string;
|
|
6211
|
+
}
|
|
6212
|
+
|
|
6213
|
+
/**
|
|
6214
|
+
* Configuration for a unit amount
|
|
6215
|
+
*/
|
|
6216
|
+
export interface UnitAmount {
|
|
6217
|
+
/**
|
|
6218
|
+
* Pricing value
|
|
6219
|
+
*/
|
|
6220
|
+
pricing_value: string;
|
|
6221
|
+
|
|
6222
|
+
/**
|
|
6223
|
+
* Per unit amount
|
|
6224
|
+
*/
|
|
6225
|
+
unit_amount: string;
|
|
6226
|
+
}
|
|
6227
|
+
}
|
|
6228
|
+
}
|
|
6229
|
+
|
|
5070
6230
|
export interface NewPlanGroupedWithProratedMinimumPrice {
|
|
5071
6231
|
/**
|
|
5072
6232
|
* The cadence to bill for this price on.
|
|
5073
6233
|
*/
|
|
5074
6234
|
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
5075
6235
|
|
|
5076
|
-
|
|
6236
|
+
/**
|
|
6237
|
+
* Configuration for grouped_with_prorated_minimum pricing
|
|
6238
|
+
*/
|
|
6239
|
+
grouped_with_prorated_minimum_config: NewPlanGroupedWithProratedMinimumPrice.GroupedWithProratedMinimumConfig;
|
|
5077
6240
|
|
|
5078
6241
|
/**
|
|
5079
6242
|
* The id of the item the price will be associated with.
|
|
5080
6243
|
*/
|
|
5081
6244
|
item_id: string;
|
|
5082
6245
|
|
|
6246
|
+
/**
|
|
6247
|
+
* The pricing model type
|
|
6248
|
+
*/
|
|
5083
6249
|
model_type: 'grouped_with_prorated_minimum';
|
|
5084
6250
|
|
|
5085
6251
|
/**
|
|
@@ -5162,6 +6328,28 @@ export interface NewPlanGroupedWithProratedMinimumPrice {
|
|
|
5162
6328
|
reference_id?: string | null;
|
|
5163
6329
|
}
|
|
5164
6330
|
|
|
6331
|
+
export namespace NewPlanGroupedWithProratedMinimumPrice {
|
|
6332
|
+
/**
|
|
6333
|
+
* Configuration for grouped_with_prorated_minimum pricing
|
|
6334
|
+
*/
|
|
6335
|
+
export interface GroupedWithProratedMinimumConfig {
|
|
6336
|
+
/**
|
|
6337
|
+
* How to determine the groups that should each have a minimum
|
|
6338
|
+
*/
|
|
6339
|
+
grouping_key: string;
|
|
6340
|
+
|
|
6341
|
+
/**
|
|
6342
|
+
* The minimum amount to charge per group
|
|
6343
|
+
*/
|
|
6344
|
+
minimum: string;
|
|
6345
|
+
|
|
6346
|
+
/**
|
|
6347
|
+
* The amount to charge per unit
|
|
6348
|
+
*/
|
|
6349
|
+
unit_rate: string;
|
|
6350
|
+
}
|
|
6351
|
+
}
|
|
6352
|
+
|
|
5165
6353
|
export interface NewPlanMatrixPrice {
|
|
5166
6354
|
/**
|
|
5167
6355
|
* The cadence to bill for this price on.
|
|
@@ -5173,8 +6361,14 @@ export interface NewPlanMatrixPrice {
|
|
|
5173
6361
|
*/
|
|
5174
6362
|
item_id: string;
|
|
5175
6363
|
|
|
6364
|
+
/**
|
|
6365
|
+
* Configuration for matrix pricing
|
|
6366
|
+
*/
|
|
5176
6367
|
matrix_config: MatrixConfig;
|
|
5177
6368
|
|
|
6369
|
+
/**
|
|
6370
|
+
* The pricing model type
|
|
6371
|
+
*/
|
|
5178
6372
|
model_type: 'matrix';
|
|
5179
6373
|
|
|
5180
6374
|
/**
|
|
@@ -5268,8 +6462,14 @@ export interface NewPlanMatrixWithAllocationPrice {
|
|
|
5268
6462
|
*/
|
|
5269
6463
|
item_id: string;
|
|
5270
6464
|
|
|
6465
|
+
/**
|
|
6466
|
+
* Configuration for matrix_with_allocation pricing
|
|
6467
|
+
*/
|
|
5271
6468
|
matrix_with_allocation_config: MatrixWithAllocationConfig;
|
|
5272
6469
|
|
|
6470
|
+
/**
|
|
6471
|
+
* The pricing model type
|
|
6472
|
+
*/
|
|
5273
6473
|
model_type: 'matrix_with_allocation';
|
|
5274
6474
|
|
|
5275
6475
|
/**
|
|
@@ -5363,8 +6563,14 @@ export interface NewPlanMatrixWithDisplayNamePrice {
|
|
|
5363
6563
|
*/
|
|
5364
6564
|
item_id: string;
|
|
5365
6565
|
|
|
5366
|
-
|
|
6566
|
+
/**
|
|
6567
|
+
* Configuration for matrix_with_display_name pricing
|
|
6568
|
+
*/
|
|
6569
|
+
matrix_with_display_name_config: NewPlanMatrixWithDisplayNamePrice.MatrixWithDisplayNameConfig;
|
|
5367
6570
|
|
|
6571
|
+
/**
|
|
6572
|
+
* The pricing model type
|
|
6573
|
+
*/
|
|
5368
6574
|
model_type: 'matrix_with_display_name';
|
|
5369
6575
|
|
|
5370
6576
|
/**
|
|
@@ -5447,20 +6653,65 @@ export interface NewPlanMatrixWithDisplayNamePrice {
|
|
|
5447
6653
|
reference_id?: string | null;
|
|
5448
6654
|
}
|
|
5449
6655
|
|
|
5450
|
-
export
|
|
5451
|
-
/**
|
|
5452
|
-
* The cadence to bill for this price on.
|
|
5453
|
-
*/
|
|
5454
|
-
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
5455
|
-
|
|
6656
|
+
export namespace NewPlanMatrixWithDisplayNamePrice {
|
|
5456
6657
|
/**
|
|
5457
|
-
*
|
|
6658
|
+
* Configuration for matrix_with_display_name pricing
|
|
5458
6659
|
*/
|
|
5459
|
-
|
|
5460
|
-
|
|
5461
|
-
|
|
6660
|
+
export interface MatrixWithDisplayNameConfig {
|
|
6661
|
+
/**
|
|
6662
|
+
* Used to determine the unit rate
|
|
6663
|
+
*/
|
|
6664
|
+
dimension: string;
|
|
5462
6665
|
|
|
5463
|
-
|
|
6666
|
+
/**
|
|
6667
|
+
* Apply per unit pricing to each dimension value
|
|
6668
|
+
*/
|
|
6669
|
+
unit_amounts: Array<MatrixWithDisplayNameConfig.UnitAmount>;
|
|
6670
|
+
}
|
|
6671
|
+
|
|
6672
|
+
export namespace MatrixWithDisplayNameConfig {
|
|
6673
|
+
/**
|
|
6674
|
+
* Configuration for a unit amount item
|
|
6675
|
+
*/
|
|
6676
|
+
export interface UnitAmount {
|
|
6677
|
+
/**
|
|
6678
|
+
* The dimension value
|
|
6679
|
+
*/
|
|
6680
|
+
dimension_value: string;
|
|
6681
|
+
|
|
6682
|
+
/**
|
|
6683
|
+
* Display name for this dimension value
|
|
6684
|
+
*/
|
|
6685
|
+
display_name: string;
|
|
6686
|
+
|
|
6687
|
+
/**
|
|
6688
|
+
* Per unit amount
|
|
6689
|
+
*/
|
|
6690
|
+
unit_amount: string;
|
|
6691
|
+
}
|
|
6692
|
+
}
|
|
6693
|
+
}
|
|
6694
|
+
|
|
6695
|
+
export interface NewPlanMaxGroupTieredPackagePrice {
|
|
6696
|
+
/**
|
|
6697
|
+
* The cadence to bill for this price on.
|
|
6698
|
+
*/
|
|
6699
|
+
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
6700
|
+
|
|
6701
|
+
/**
|
|
6702
|
+
* The id of the item the price will be associated with.
|
|
6703
|
+
*/
|
|
6704
|
+
item_id: string;
|
|
6705
|
+
|
|
6706
|
+
/**
|
|
6707
|
+
* Configuration for max_group_tiered_package pricing
|
|
6708
|
+
*/
|
|
6709
|
+
max_group_tiered_package_config: NewPlanMaxGroupTieredPackagePrice.MaxGroupTieredPackageConfig;
|
|
6710
|
+
|
|
6711
|
+
/**
|
|
6712
|
+
* The pricing model type
|
|
6713
|
+
*/
|
|
6714
|
+
model_type: 'max_group_tiered_package';
|
|
5464
6715
|
|
|
5465
6716
|
/**
|
|
5466
6717
|
* The name of the price.
|
|
@@ -5542,6 +6793,45 @@ export interface NewPlanMaxGroupTieredPackagePrice {
|
|
|
5542
6793
|
reference_id?: string | null;
|
|
5543
6794
|
}
|
|
5544
6795
|
|
|
6796
|
+
export namespace NewPlanMaxGroupTieredPackagePrice {
|
|
6797
|
+
/**
|
|
6798
|
+
* Configuration for max_group_tiered_package pricing
|
|
6799
|
+
*/
|
|
6800
|
+
export interface MaxGroupTieredPackageConfig {
|
|
6801
|
+
/**
|
|
6802
|
+
* The event property used to group before tiering the group with the highest value
|
|
6803
|
+
*/
|
|
6804
|
+
grouping_key: string;
|
|
6805
|
+
|
|
6806
|
+
/**
|
|
6807
|
+
* Package size
|
|
6808
|
+
*/
|
|
6809
|
+
package_size: string;
|
|
6810
|
+
|
|
6811
|
+
/**
|
|
6812
|
+
* Apply tiered pricing to the largest group after grouping with the provided key.
|
|
6813
|
+
*/
|
|
6814
|
+
tiers: Array<MaxGroupTieredPackageConfig.Tier>;
|
|
6815
|
+
}
|
|
6816
|
+
|
|
6817
|
+
export namespace MaxGroupTieredPackageConfig {
|
|
6818
|
+
/**
|
|
6819
|
+
* Configuration for a single tier
|
|
6820
|
+
*/
|
|
6821
|
+
export interface Tier {
|
|
6822
|
+
/**
|
|
6823
|
+
* Tier lower bound
|
|
6824
|
+
*/
|
|
6825
|
+
tier_lower_bound: string;
|
|
6826
|
+
|
|
6827
|
+
/**
|
|
6828
|
+
* Per unit amount
|
|
6829
|
+
*/
|
|
6830
|
+
unit_amount: string;
|
|
6831
|
+
}
|
|
6832
|
+
}
|
|
6833
|
+
}
|
|
6834
|
+
|
|
5545
6835
|
export interface NewPlanMinimumCompositePrice {
|
|
5546
6836
|
/**
|
|
5547
6837
|
* The cadence to bill for this price on.
|
|
@@ -5553,8 +6843,14 @@ export interface NewPlanMinimumCompositePrice {
|
|
|
5553
6843
|
*/
|
|
5554
6844
|
item_id: string;
|
|
5555
6845
|
|
|
6846
|
+
/**
|
|
6847
|
+
* Configuration for minimum pricing
|
|
6848
|
+
*/
|
|
5556
6849
|
minimum_config: NewPlanMinimumCompositePrice.MinimumConfig;
|
|
5557
6850
|
|
|
6851
|
+
/**
|
|
6852
|
+
* The pricing model type
|
|
6853
|
+
*/
|
|
5558
6854
|
model_type: 'minimum';
|
|
5559
6855
|
|
|
5560
6856
|
/**
|
|
@@ -5638,6 +6934,9 @@ export interface NewPlanMinimumCompositePrice {
|
|
|
5638
6934
|
}
|
|
5639
6935
|
|
|
5640
6936
|
export namespace NewPlanMinimumCompositePrice {
|
|
6937
|
+
/**
|
|
6938
|
+
* Configuration for minimum pricing
|
|
6939
|
+
*/
|
|
5641
6940
|
export interface MinimumConfig {
|
|
5642
6941
|
/**
|
|
5643
6942
|
* The minimum amount to apply
|
|
@@ -5645,10 +6944,9 @@ export namespace NewPlanMinimumCompositePrice {
|
|
|
5645
6944
|
minimum_amount: string;
|
|
5646
6945
|
|
|
5647
6946
|
/**
|
|
5648
|
-
*
|
|
5649
|
-
* service period. Set to false to disable proration.
|
|
6947
|
+
* If true, subtotals from this price are prorated based on the service period
|
|
5650
6948
|
*/
|
|
5651
|
-
prorated?: boolean
|
|
6949
|
+
prorated?: boolean;
|
|
5652
6950
|
}
|
|
5653
6951
|
}
|
|
5654
6952
|
|
|
@@ -5663,6 +6961,9 @@ export interface NewPlanPackagePrice {
|
|
|
5663
6961
|
*/
|
|
5664
6962
|
item_id: string;
|
|
5665
6963
|
|
|
6964
|
+
/**
|
|
6965
|
+
* The pricing model type
|
|
6966
|
+
*/
|
|
5666
6967
|
model_type: 'package';
|
|
5667
6968
|
|
|
5668
6969
|
/**
|
|
@@ -5670,6 +6971,9 @@ export interface NewPlanPackagePrice {
|
|
|
5670
6971
|
*/
|
|
5671
6972
|
name: string;
|
|
5672
6973
|
|
|
6974
|
+
/**
|
|
6975
|
+
* Configuration for package pricing
|
|
6976
|
+
*/
|
|
5673
6977
|
package_config: PackageConfig;
|
|
5674
6978
|
|
|
5675
6979
|
/**
|
|
@@ -5758,6 +7062,9 @@ export interface NewPlanPackageWithAllocationPrice {
|
|
|
5758
7062
|
*/
|
|
5759
7063
|
item_id: string;
|
|
5760
7064
|
|
|
7065
|
+
/**
|
|
7066
|
+
* The pricing model type
|
|
7067
|
+
*/
|
|
5761
7068
|
model_type: 'package_with_allocation';
|
|
5762
7069
|
|
|
5763
7070
|
/**
|
|
@@ -5765,7 +7072,10 @@ export interface NewPlanPackageWithAllocationPrice {
|
|
|
5765
7072
|
*/
|
|
5766
7073
|
name: string;
|
|
5767
7074
|
|
|
5768
|
-
|
|
7075
|
+
/**
|
|
7076
|
+
* Configuration for package_with_allocation pricing
|
|
7077
|
+
*/
|
|
7078
|
+
package_with_allocation_config: NewPlanPackageWithAllocationPrice.PackageWithAllocationConfig;
|
|
5769
7079
|
|
|
5770
7080
|
/**
|
|
5771
7081
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -5842,6 +7152,28 @@ export interface NewPlanPackageWithAllocationPrice {
|
|
|
5842
7152
|
reference_id?: string | null;
|
|
5843
7153
|
}
|
|
5844
7154
|
|
|
7155
|
+
export namespace NewPlanPackageWithAllocationPrice {
|
|
7156
|
+
/**
|
|
7157
|
+
* Configuration for package_with_allocation pricing
|
|
7158
|
+
*/
|
|
7159
|
+
export interface PackageWithAllocationConfig {
|
|
7160
|
+
/**
|
|
7161
|
+
* Usage allocation
|
|
7162
|
+
*/
|
|
7163
|
+
allocation: string;
|
|
7164
|
+
|
|
7165
|
+
/**
|
|
7166
|
+
* Price per package
|
|
7167
|
+
*/
|
|
7168
|
+
package_amount: string;
|
|
7169
|
+
|
|
7170
|
+
/**
|
|
7171
|
+
* Package size
|
|
7172
|
+
*/
|
|
7173
|
+
package_size: string;
|
|
7174
|
+
}
|
|
7175
|
+
}
|
|
7176
|
+
|
|
5845
7177
|
export interface NewPlanScalableMatrixWithTieredPricingPrice {
|
|
5846
7178
|
/**
|
|
5847
7179
|
* The cadence to bill for this price on.
|
|
@@ -5853,6 +7185,9 @@ export interface NewPlanScalableMatrixWithTieredPricingPrice {
|
|
|
5853
7185
|
*/
|
|
5854
7186
|
item_id: string;
|
|
5855
7187
|
|
|
7188
|
+
/**
|
|
7189
|
+
* The pricing model type
|
|
7190
|
+
*/
|
|
5856
7191
|
model_type: 'scalable_matrix_with_tiered_pricing';
|
|
5857
7192
|
|
|
5858
7193
|
/**
|
|
@@ -5860,7 +7195,10 @@ export interface NewPlanScalableMatrixWithTieredPricingPrice {
|
|
|
5860
7195
|
*/
|
|
5861
7196
|
name: string;
|
|
5862
7197
|
|
|
5863
|
-
|
|
7198
|
+
/**
|
|
7199
|
+
* Configuration for scalable_matrix_with_tiered_pricing pricing
|
|
7200
|
+
*/
|
|
7201
|
+
scalable_matrix_with_tiered_pricing_config: NewPlanScalableMatrixWithTieredPricingPrice.ScalableMatrixWithTieredPricingConfig;
|
|
5864
7202
|
|
|
5865
7203
|
/**
|
|
5866
7204
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -5937,6 +7275,70 @@ export interface NewPlanScalableMatrixWithTieredPricingPrice {
|
|
|
5937
7275
|
reference_id?: string | null;
|
|
5938
7276
|
}
|
|
5939
7277
|
|
|
7278
|
+
export namespace NewPlanScalableMatrixWithTieredPricingPrice {
|
|
7279
|
+
/**
|
|
7280
|
+
* Configuration for scalable_matrix_with_tiered_pricing pricing
|
|
7281
|
+
*/
|
|
7282
|
+
export interface ScalableMatrixWithTieredPricingConfig {
|
|
7283
|
+
/**
|
|
7284
|
+
* Used for the scalable matrix first dimension
|
|
7285
|
+
*/
|
|
7286
|
+
first_dimension: string;
|
|
7287
|
+
|
|
7288
|
+
/**
|
|
7289
|
+
* Apply a scaling factor to each dimension
|
|
7290
|
+
*/
|
|
7291
|
+
matrix_scaling_factors: Array<ScalableMatrixWithTieredPricingConfig.MatrixScalingFactor>;
|
|
7292
|
+
|
|
7293
|
+
/**
|
|
7294
|
+
* Tier pricing structure
|
|
7295
|
+
*/
|
|
7296
|
+
tiers: Array<ScalableMatrixWithTieredPricingConfig.Tier>;
|
|
7297
|
+
|
|
7298
|
+
/**
|
|
7299
|
+
* Used for the scalable matrix second dimension (optional)
|
|
7300
|
+
*/
|
|
7301
|
+
second_dimension?: string | null;
|
|
7302
|
+
}
|
|
7303
|
+
|
|
7304
|
+
export namespace ScalableMatrixWithTieredPricingConfig {
|
|
7305
|
+
/**
|
|
7306
|
+
* Configuration for a single matrix scaling factor
|
|
7307
|
+
*/
|
|
7308
|
+
export interface MatrixScalingFactor {
|
|
7309
|
+
/**
|
|
7310
|
+
* First dimension value
|
|
7311
|
+
*/
|
|
7312
|
+
first_dimension_value: string;
|
|
7313
|
+
|
|
7314
|
+
/**
|
|
7315
|
+
* Scaling factor
|
|
7316
|
+
*/
|
|
7317
|
+
scaling_factor: string;
|
|
7318
|
+
|
|
7319
|
+
/**
|
|
7320
|
+
* Second dimension value (optional)
|
|
7321
|
+
*/
|
|
7322
|
+
second_dimension_value?: string | null;
|
|
7323
|
+
}
|
|
7324
|
+
|
|
7325
|
+
/**
|
|
7326
|
+
* Configuration for a single tier entry with business logic
|
|
7327
|
+
*/
|
|
7328
|
+
export interface Tier {
|
|
7329
|
+
/**
|
|
7330
|
+
* Tier lower bound
|
|
7331
|
+
*/
|
|
7332
|
+
tier_lower_bound: string;
|
|
7333
|
+
|
|
7334
|
+
/**
|
|
7335
|
+
* Per unit amount
|
|
7336
|
+
*/
|
|
7337
|
+
unit_amount: string;
|
|
7338
|
+
}
|
|
7339
|
+
}
|
|
7340
|
+
}
|
|
7341
|
+
|
|
5940
7342
|
export interface NewPlanScalableMatrixWithUnitPricingPrice {
|
|
5941
7343
|
/**
|
|
5942
7344
|
* The cadence to bill for this price on.
|
|
@@ -5948,6 +7350,9 @@ export interface NewPlanScalableMatrixWithUnitPricingPrice {
|
|
|
5948
7350
|
*/
|
|
5949
7351
|
item_id: string;
|
|
5950
7352
|
|
|
7353
|
+
/**
|
|
7354
|
+
* The pricing model type
|
|
7355
|
+
*/
|
|
5951
7356
|
model_type: 'scalable_matrix_with_unit_pricing';
|
|
5952
7357
|
|
|
5953
7358
|
/**
|
|
@@ -5955,7 +7360,10 @@ export interface NewPlanScalableMatrixWithUnitPricingPrice {
|
|
|
5955
7360
|
*/
|
|
5956
7361
|
name: string;
|
|
5957
7362
|
|
|
5958
|
-
|
|
7363
|
+
/**
|
|
7364
|
+
* Configuration for scalable_matrix_with_unit_pricing pricing
|
|
7365
|
+
*/
|
|
7366
|
+
scalable_matrix_with_unit_pricing_config: NewPlanScalableMatrixWithUnitPricingPrice.ScalableMatrixWithUnitPricingConfig;
|
|
5959
7367
|
|
|
5960
7368
|
/**
|
|
5961
7369
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -6032,6 +7440,60 @@ export interface NewPlanScalableMatrixWithUnitPricingPrice {
|
|
|
6032
7440
|
reference_id?: string | null;
|
|
6033
7441
|
}
|
|
6034
7442
|
|
|
7443
|
+
export namespace NewPlanScalableMatrixWithUnitPricingPrice {
|
|
7444
|
+
/**
|
|
7445
|
+
* Configuration for scalable_matrix_with_unit_pricing pricing
|
|
7446
|
+
*/
|
|
7447
|
+
export interface ScalableMatrixWithUnitPricingConfig {
|
|
7448
|
+
/**
|
|
7449
|
+
* Used to determine the unit rate
|
|
7450
|
+
*/
|
|
7451
|
+
first_dimension: string;
|
|
7452
|
+
|
|
7453
|
+
/**
|
|
7454
|
+
* Apply a scaling factor to each dimension
|
|
7455
|
+
*/
|
|
7456
|
+
matrix_scaling_factors: Array<ScalableMatrixWithUnitPricingConfig.MatrixScalingFactor>;
|
|
7457
|
+
|
|
7458
|
+
/**
|
|
7459
|
+
* The final unit price to rate against the output of the matrix
|
|
7460
|
+
*/
|
|
7461
|
+
unit_price: string;
|
|
7462
|
+
|
|
7463
|
+
/**
|
|
7464
|
+
* If true, the unit price will be prorated to the billing period
|
|
7465
|
+
*/
|
|
7466
|
+
prorate?: boolean | null;
|
|
7467
|
+
|
|
7468
|
+
/**
|
|
7469
|
+
* Used to determine the unit rate (optional)
|
|
7470
|
+
*/
|
|
7471
|
+
second_dimension?: string | null;
|
|
7472
|
+
}
|
|
7473
|
+
|
|
7474
|
+
export namespace ScalableMatrixWithUnitPricingConfig {
|
|
7475
|
+
/**
|
|
7476
|
+
* Configuration for a single matrix scaling factor
|
|
7477
|
+
*/
|
|
7478
|
+
export interface MatrixScalingFactor {
|
|
7479
|
+
/**
|
|
7480
|
+
* First dimension value
|
|
7481
|
+
*/
|
|
7482
|
+
first_dimension_value: string;
|
|
7483
|
+
|
|
7484
|
+
/**
|
|
7485
|
+
* Scaling factor
|
|
7486
|
+
*/
|
|
7487
|
+
scaling_factor: string;
|
|
7488
|
+
|
|
7489
|
+
/**
|
|
7490
|
+
* Second dimension value (optional)
|
|
7491
|
+
*/
|
|
7492
|
+
second_dimension_value?: string | null;
|
|
7493
|
+
}
|
|
7494
|
+
}
|
|
7495
|
+
}
|
|
7496
|
+
|
|
6035
7497
|
export interface NewPlanThresholdTotalAmountPrice {
|
|
6036
7498
|
/**
|
|
6037
7499
|
* The cadence to bill for this price on.
|
|
@@ -6043,6 +7505,9 @@ export interface NewPlanThresholdTotalAmountPrice {
|
|
|
6043
7505
|
*/
|
|
6044
7506
|
item_id: string;
|
|
6045
7507
|
|
|
7508
|
+
/**
|
|
7509
|
+
* The pricing model type
|
|
7510
|
+
*/
|
|
6046
7511
|
model_type: 'threshold_total_amount';
|
|
6047
7512
|
|
|
6048
7513
|
/**
|
|
@@ -6050,7 +7515,10 @@ export interface NewPlanThresholdTotalAmountPrice {
|
|
|
6050
7515
|
*/
|
|
6051
7516
|
name: string;
|
|
6052
7517
|
|
|
6053
|
-
|
|
7518
|
+
/**
|
|
7519
|
+
* Configuration for threshold_total_amount pricing
|
|
7520
|
+
*/
|
|
7521
|
+
threshold_total_amount_config: NewPlanThresholdTotalAmountPrice.ThresholdTotalAmountConfig;
|
|
6054
7522
|
|
|
6055
7523
|
/**
|
|
6056
7524
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -6127,7 +7595,42 @@ export interface NewPlanThresholdTotalAmountPrice {
|
|
|
6127
7595
|
reference_id?: string | null;
|
|
6128
7596
|
}
|
|
6129
7597
|
|
|
6130
|
-
export
|
|
7598
|
+
export namespace NewPlanThresholdTotalAmountPrice {
|
|
7599
|
+
/**
|
|
7600
|
+
* Configuration for threshold_total_amount pricing
|
|
7601
|
+
*/
|
|
7602
|
+
export interface ThresholdTotalAmountConfig {
|
|
7603
|
+
/**
|
|
7604
|
+
* When the quantity consumed passes a provided threshold, the configured total
|
|
7605
|
+
* will be charged
|
|
7606
|
+
*/
|
|
7607
|
+
consumption_table: Array<ThresholdTotalAmountConfig.ConsumptionTable>;
|
|
7608
|
+
|
|
7609
|
+
/**
|
|
7610
|
+
* If true, the unit price will be prorated to the billing period
|
|
7611
|
+
*/
|
|
7612
|
+
prorate?: boolean | null;
|
|
7613
|
+
}
|
|
7614
|
+
|
|
7615
|
+
export namespace ThresholdTotalAmountConfig {
|
|
7616
|
+
/**
|
|
7617
|
+
* Configuration for a single threshold
|
|
7618
|
+
*/
|
|
7619
|
+
export interface ConsumptionTable {
|
|
7620
|
+
/**
|
|
7621
|
+
* Quantity threshold
|
|
7622
|
+
*/
|
|
7623
|
+
threshold: string;
|
|
7624
|
+
|
|
7625
|
+
/**
|
|
7626
|
+
* Total amount for this threshold
|
|
7627
|
+
*/
|
|
7628
|
+
total_amount: string;
|
|
7629
|
+
}
|
|
7630
|
+
}
|
|
7631
|
+
}
|
|
7632
|
+
|
|
7633
|
+
export interface NewPlanTieredPackagePrice {
|
|
6131
7634
|
/**
|
|
6132
7635
|
* The cadence to bill for this price on.
|
|
6133
7636
|
*/
|
|
@@ -6138,14 +7641,20 @@ export interface NewPlanTierWithProrationPrice {
|
|
|
6138
7641
|
*/
|
|
6139
7642
|
item_id: string;
|
|
6140
7643
|
|
|
6141
|
-
|
|
7644
|
+
/**
|
|
7645
|
+
* The pricing model type
|
|
7646
|
+
*/
|
|
7647
|
+
model_type: 'tiered_package';
|
|
6142
7648
|
|
|
6143
7649
|
/**
|
|
6144
7650
|
* The name of the price.
|
|
6145
7651
|
*/
|
|
6146
7652
|
name: string;
|
|
6147
7653
|
|
|
6148
|
-
|
|
7654
|
+
/**
|
|
7655
|
+
* Configuration for tiered_package pricing
|
|
7656
|
+
*/
|
|
7657
|
+
tiered_package_config: NewPlanTieredPackagePrice.TieredPackageConfig;
|
|
6149
7658
|
|
|
6150
7659
|
/**
|
|
6151
7660
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -6222,7 +7731,44 @@ export interface NewPlanTierWithProrationPrice {
|
|
|
6222
7731
|
reference_id?: string | null;
|
|
6223
7732
|
}
|
|
6224
7733
|
|
|
6225
|
-
export
|
|
7734
|
+
export namespace NewPlanTieredPackagePrice {
|
|
7735
|
+
/**
|
|
7736
|
+
* Configuration for tiered_package pricing
|
|
7737
|
+
*/
|
|
7738
|
+
export interface TieredPackageConfig {
|
|
7739
|
+
/**
|
|
7740
|
+
* Package size
|
|
7741
|
+
*/
|
|
7742
|
+
package_size: string;
|
|
7743
|
+
|
|
7744
|
+
/**
|
|
7745
|
+
* Apply tiered pricing after rounding up the quantity to the package size. Tiers
|
|
7746
|
+
* are defined using exclusive lower bounds. The tier bounds are defined based on
|
|
7747
|
+
* the total quantity rather than the number of packages, so they must be multiples
|
|
7748
|
+
* of the package size.
|
|
7749
|
+
*/
|
|
7750
|
+
tiers: Array<TieredPackageConfig.Tier>;
|
|
7751
|
+
}
|
|
7752
|
+
|
|
7753
|
+
export namespace TieredPackageConfig {
|
|
7754
|
+
/**
|
|
7755
|
+
* Configuration for a single tier with business logic
|
|
7756
|
+
*/
|
|
7757
|
+
export interface Tier {
|
|
7758
|
+
/**
|
|
7759
|
+
* Price per package
|
|
7760
|
+
*/
|
|
7761
|
+
per_unit: string;
|
|
7762
|
+
|
|
7763
|
+
/**
|
|
7764
|
+
* Tier lower bound
|
|
7765
|
+
*/
|
|
7766
|
+
tier_lower_bound: string;
|
|
7767
|
+
}
|
|
7768
|
+
}
|
|
7769
|
+
}
|
|
7770
|
+
|
|
7771
|
+
export interface NewPlanTieredPackageWithMinimumPrice {
|
|
6226
7772
|
/**
|
|
6227
7773
|
* The cadence to bill for this price on.
|
|
6228
7774
|
*/
|
|
@@ -6233,14 +7779,20 @@ export interface NewPlanTieredPackagePrice {
|
|
|
6233
7779
|
*/
|
|
6234
7780
|
item_id: string;
|
|
6235
7781
|
|
|
6236
|
-
|
|
7782
|
+
/**
|
|
7783
|
+
* The pricing model type
|
|
7784
|
+
*/
|
|
7785
|
+
model_type: 'tiered_package_with_minimum';
|
|
6237
7786
|
|
|
6238
7787
|
/**
|
|
6239
7788
|
* The name of the price.
|
|
6240
7789
|
*/
|
|
6241
7790
|
name: string;
|
|
6242
7791
|
|
|
6243
|
-
|
|
7792
|
+
/**
|
|
7793
|
+
* Configuration for tiered_package_with_minimum pricing
|
|
7794
|
+
*/
|
|
7795
|
+
tiered_package_with_minimum_config: NewPlanTieredPackageWithMinimumPrice.TieredPackageWithMinimumConfig;
|
|
6244
7796
|
|
|
6245
7797
|
/**
|
|
6246
7798
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -6317,7 +7869,47 @@ export interface NewPlanTieredPackagePrice {
|
|
|
6317
7869
|
reference_id?: string | null;
|
|
6318
7870
|
}
|
|
6319
7871
|
|
|
6320
|
-
export
|
|
7872
|
+
export namespace NewPlanTieredPackageWithMinimumPrice {
|
|
7873
|
+
/**
|
|
7874
|
+
* Configuration for tiered_package_with_minimum pricing
|
|
7875
|
+
*/
|
|
7876
|
+
export interface TieredPackageWithMinimumConfig {
|
|
7877
|
+
/**
|
|
7878
|
+
* Package size
|
|
7879
|
+
*/
|
|
7880
|
+
package_size: number;
|
|
7881
|
+
|
|
7882
|
+
/**
|
|
7883
|
+
* Apply tiered pricing after rounding up the quantity to the package size. Tiers
|
|
7884
|
+
* are defined using exclusive lower bounds.
|
|
7885
|
+
*/
|
|
7886
|
+
tiers: Array<TieredPackageWithMinimumConfig.Tier>;
|
|
7887
|
+
}
|
|
7888
|
+
|
|
7889
|
+
export namespace TieredPackageWithMinimumConfig {
|
|
7890
|
+
/**
|
|
7891
|
+
* Configuration for a single tier
|
|
7892
|
+
*/
|
|
7893
|
+
export interface Tier {
|
|
7894
|
+
/**
|
|
7895
|
+
* Minimum amount
|
|
7896
|
+
*/
|
|
7897
|
+
minimum_amount: string;
|
|
7898
|
+
|
|
7899
|
+
/**
|
|
7900
|
+
* Price per package
|
|
7901
|
+
*/
|
|
7902
|
+
per_unit: string;
|
|
7903
|
+
|
|
7904
|
+
/**
|
|
7905
|
+
* Tier lower bound
|
|
7906
|
+
*/
|
|
7907
|
+
tier_lower_bound: string;
|
|
7908
|
+
}
|
|
7909
|
+
}
|
|
7910
|
+
}
|
|
7911
|
+
|
|
7912
|
+
export interface NewPlanTieredPrice {
|
|
6321
7913
|
/**
|
|
6322
7914
|
* The cadence to bill for this price on.
|
|
6323
7915
|
*/
|
|
@@ -6328,14 +7920,20 @@ export interface NewPlanTieredPackageWithMinimumPrice {
|
|
|
6328
7920
|
*/
|
|
6329
7921
|
item_id: string;
|
|
6330
7922
|
|
|
6331
|
-
|
|
7923
|
+
/**
|
|
7924
|
+
* The pricing model type
|
|
7925
|
+
*/
|
|
7926
|
+
model_type: 'tiered';
|
|
6332
7927
|
|
|
6333
7928
|
/**
|
|
6334
7929
|
* The name of the price.
|
|
6335
7930
|
*/
|
|
6336
7931
|
name: string;
|
|
6337
7932
|
|
|
6338
|
-
|
|
7933
|
+
/**
|
|
7934
|
+
* Configuration for tiered pricing
|
|
7935
|
+
*/
|
|
7936
|
+
tiered_config: TieredConfig;
|
|
6339
7937
|
|
|
6340
7938
|
/**
|
|
6341
7939
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -6412,7 +8010,7 @@ export interface NewPlanTieredPackageWithMinimumPrice {
|
|
|
6412
8010
|
reference_id?: string | null;
|
|
6413
8011
|
}
|
|
6414
8012
|
|
|
6415
|
-
export interface
|
|
8013
|
+
export interface NewPlanTieredWithMinimumPrice {
|
|
6416
8014
|
/**
|
|
6417
8015
|
* The cadence to bill for this price on.
|
|
6418
8016
|
*/
|
|
@@ -6423,14 +8021,20 @@ export interface NewPlanTieredPrice {
|
|
|
6423
8021
|
*/
|
|
6424
8022
|
item_id: string;
|
|
6425
8023
|
|
|
6426
|
-
|
|
6427
|
-
|
|
8024
|
+
/**
|
|
8025
|
+
* The pricing model type
|
|
8026
|
+
*/
|
|
8027
|
+
model_type: 'tiered_with_minimum';
|
|
8028
|
+
|
|
6428
8029
|
/**
|
|
6429
8030
|
* The name of the price.
|
|
6430
8031
|
*/
|
|
6431
8032
|
name: string;
|
|
6432
8033
|
|
|
6433
|
-
|
|
8034
|
+
/**
|
|
8035
|
+
* Configuration for tiered_with_minimum pricing
|
|
8036
|
+
*/
|
|
8037
|
+
tiered_with_minimum_config: NewPlanTieredWithMinimumPrice.TieredWithMinimumConfig;
|
|
6434
8038
|
|
|
6435
8039
|
/**
|
|
6436
8040
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -6507,99 +8111,49 @@ export interface NewPlanTieredPrice {
|
|
|
6507
8111
|
reference_id?: string | null;
|
|
6508
8112
|
}
|
|
6509
8113
|
|
|
6510
|
-
export
|
|
6511
|
-
/**
|
|
6512
|
-
* The cadence to bill for this price on.
|
|
6513
|
-
*/
|
|
6514
|
-
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
6515
|
-
|
|
6516
|
-
/**
|
|
6517
|
-
* The id of the item the price will be associated with.
|
|
6518
|
-
*/
|
|
6519
|
-
item_id: string;
|
|
6520
|
-
|
|
6521
|
-
model_type: 'tiered_with_minimum';
|
|
6522
|
-
|
|
6523
|
-
/**
|
|
6524
|
-
* The name of the price.
|
|
6525
|
-
*/
|
|
6526
|
-
name: string;
|
|
6527
|
-
|
|
6528
|
-
tiered_with_minimum_config: { [key: string]: unknown };
|
|
6529
|
-
|
|
6530
|
-
/**
|
|
6531
|
-
* The id of the billable metric for the price. Only needed if the price is
|
|
6532
|
-
* usage-based.
|
|
6533
|
-
*/
|
|
6534
|
-
billable_metric_id?: string | null;
|
|
6535
|
-
|
|
6536
|
-
/**
|
|
6537
|
-
* If the Price represents a fixed cost, the price will be billed in-advance if
|
|
6538
|
-
* this is true, and in-arrears if this is false.
|
|
6539
|
-
*/
|
|
6540
|
-
billed_in_advance?: boolean | null;
|
|
6541
|
-
|
|
6542
|
-
/**
|
|
6543
|
-
* For custom cadence: specifies the duration of the billing period in days or
|
|
6544
|
-
* months.
|
|
6545
|
-
*/
|
|
6546
|
-
billing_cycle_configuration?: NewBillingCycleConfiguration | null;
|
|
6547
|
-
|
|
6548
|
-
/**
|
|
6549
|
-
* The per unit conversion rate of the price currency to the invoicing currency.
|
|
6550
|
-
*/
|
|
6551
|
-
conversion_rate?: number | null;
|
|
6552
|
-
|
|
6553
|
-
/**
|
|
6554
|
-
* The configuration for the rate of the price currency to the invoicing currency.
|
|
6555
|
-
*/
|
|
6556
|
-
conversion_rate_config?: UnitConversionRateConfig | TieredConversionRateConfig | null;
|
|
6557
|
-
|
|
6558
|
-
/**
|
|
6559
|
-
* An ISO 4217 currency string, or custom pricing unit identifier, in which this
|
|
6560
|
-
* price is billed.
|
|
6561
|
-
*/
|
|
6562
|
-
currency?: string | null;
|
|
6563
|
-
|
|
6564
|
-
/**
|
|
6565
|
-
* For dimensional price: specifies a price group and dimension values
|
|
6566
|
-
*/
|
|
6567
|
-
dimensional_price_configuration?: NewDimensionalPriceConfiguration | null;
|
|
6568
|
-
|
|
8114
|
+
export namespace NewPlanTieredWithMinimumPrice {
|
|
6569
8115
|
/**
|
|
6570
|
-
*
|
|
8116
|
+
* Configuration for tiered_with_minimum pricing
|
|
6571
8117
|
*/
|
|
6572
|
-
|
|
8118
|
+
export interface TieredWithMinimumConfig {
|
|
8119
|
+
/**
|
|
8120
|
+
* Tiered pricing with a minimum amount dependent on the volume tier. Tiers are
|
|
8121
|
+
* defined using exclusive lower bounds.
|
|
8122
|
+
*/
|
|
8123
|
+
tiers: Array<TieredWithMinimumConfig.Tier>;
|
|
6573
8124
|
|
|
6574
|
-
|
|
6575
|
-
|
|
6576
|
-
|
|
6577
|
-
|
|
6578
|
-
fixed_price_quantity?: number | null;
|
|
8125
|
+
/**
|
|
8126
|
+
* If true, tiers with an accrued amount of 0 will not be included in the rating.
|
|
8127
|
+
*/
|
|
8128
|
+
hide_zero_amount_tiers?: boolean;
|
|
6579
8129
|
|
|
6580
|
-
|
|
6581
|
-
|
|
6582
|
-
|
|
6583
|
-
|
|
8130
|
+
/**
|
|
8131
|
+
* If true, the unit price will be prorated to the billing period
|
|
8132
|
+
*/
|
|
8133
|
+
prorate?: boolean;
|
|
8134
|
+
}
|
|
6584
8135
|
|
|
6585
|
-
|
|
6586
|
-
|
|
6587
|
-
|
|
6588
|
-
|
|
6589
|
-
|
|
8136
|
+
export namespace TieredWithMinimumConfig {
|
|
8137
|
+
/**
|
|
8138
|
+
* Configuration for a single tier
|
|
8139
|
+
*/
|
|
8140
|
+
export interface Tier {
|
|
8141
|
+
/**
|
|
8142
|
+
* Minimum amount
|
|
8143
|
+
*/
|
|
8144
|
+
minimum_amount: string;
|
|
6590
8145
|
|
|
6591
|
-
|
|
6592
|
-
|
|
6593
|
-
|
|
6594
|
-
|
|
6595
|
-
*/
|
|
6596
|
-
metadata?: { [key: string]: string | null } | null;
|
|
8146
|
+
/**
|
|
8147
|
+
* Tier lower bound
|
|
8148
|
+
*/
|
|
8149
|
+
tier_lower_bound: string;
|
|
6597
8150
|
|
|
6598
|
-
|
|
6599
|
-
|
|
6600
|
-
|
|
6601
|
-
|
|
6602
|
-
|
|
8151
|
+
/**
|
|
8152
|
+
* Per unit amount
|
|
8153
|
+
*/
|
|
8154
|
+
unit_amount: string;
|
|
8155
|
+
}
|
|
8156
|
+
}
|
|
6603
8157
|
}
|
|
6604
8158
|
|
|
6605
8159
|
export interface NewPlanUnitPrice {
|
|
@@ -6613,6 +8167,9 @@ export interface NewPlanUnitPrice {
|
|
|
6613
8167
|
*/
|
|
6614
8168
|
item_id: string;
|
|
6615
8169
|
|
|
8170
|
+
/**
|
|
8171
|
+
* The pricing model type
|
|
8172
|
+
*/
|
|
6616
8173
|
model_type: 'unit';
|
|
6617
8174
|
|
|
6618
8175
|
/**
|
|
@@ -6620,6 +8177,9 @@ export interface NewPlanUnitPrice {
|
|
|
6620
8177
|
*/
|
|
6621
8178
|
name: string;
|
|
6622
8179
|
|
|
8180
|
+
/**
|
|
8181
|
+
* Configuration for unit pricing
|
|
8182
|
+
*/
|
|
6623
8183
|
unit_config: UnitConfig;
|
|
6624
8184
|
|
|
6625
8185
|
/**
|
|
@@ -6708,6 +8268,9 @@ export interface NewPlanUnitWithPercentPrice {
|
|
|
6708
8268
|
*/
|
|
6709
8269
|
item_id: string;
|
|
6710
8270
|
|
|
8271
|
+
/**
|
|
8272
|
+
* The pricing model type
|
|
8273
|
+
*/
|
|
6711
8274
|
model_type: 'unit_with_percent';
|
|
6712
8275
|
|
|
6713
8276
|
/**
|
|
@@ -6715,7 +8278,10 @@ export interface NewPlanUnitWithPercentPrice {
|
|
|
6715
8278
|
*/
|
|
6716
8279
|
name: string;
|
|
6717
8280
|
|
|
6718
|
-
|
|
8281
|
+
/**
|
|
8282
|
+
* Configuration for unit_with_percent pricing
|
|
8283
|
+
*/
|
|
8284
|
+
unit_with_percent_config: NewPlanUnitWithPercentPrice.UnitWithPercentConfig;
|
|
6719
8285
|
|
|
6720
8286
|
/**
|
|
6721
8287
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -6792,6 +8358,23 @@ export interface NewPlanUnitWithPercentPrice {
|
|
|
6792
8358
|
reference_id?: string | null;
|
|
6793
8359
|
}
|
|
6794
8360
|
|
|
8361
|
+
export namespace NewPlanUnitWithPercentPrice {
|
|
8362
|
+
/**
|
|
8363
|
+
* Configuration for unit_with_percent pricing
|
|
8364
|
+
*/
|
|
8365
|
+
export interface UnitWithPercentConfig {
|
|
8366
|
+
/**
|
|
8367
|
+
* What percent, out of 100, of the calculated total to charge
|
|
8368
|
+
*/
|
|
8369
|
+
percent: string;
|
|
8370
|
+
|
|
8371
|
+
/**
|
|
8372
|
+
* Rate per unit of usage
|
|
8373
|
+
*/
|
|
8374
|
+
unit_amount: string;
|
|
8375
|
+
}
|
|
8376
|
+
}
|
|
8377
|
+
|
|
6795
8378
|
export interface NewPlanUnitWithProrationPrice {
|
|
6796
8379
|
/**
|
|
6797
8380
|
* The cadence to bill for this price on.
|
|
@@ -6803,6 +8386,9 @@ export interface NewPlanUnitWithProrationPrice {
|
|
|
6803
8386
|
*/
|
|
6804
8387
|
item_id: string;
|
|
6805
8388
|
|
|
8389
|
+
/**
|
|
8390
|
+
* The pricing model type
|
|
8391
|
+
*/
|
|
6806
8392
|
model_type: 'unit_with_proration';
|
|
6807
8393
|
|
|
6808
8394
|
/**
|
|
@@ -6810,7 +8396,10 @@ export interface NewPlanUnitWithProrationPrice {
|
|
|
6810
8396
|
*/
|
|
6811
8397
|
name: string;
|
|
6812
8398
|
|
|
6813
|
-
|
|
8399
|
+
/**
|
|
8400
|
+
* Configuration for unit_with_proration pricing
|
|
8401
|
+
*/
|
|
8402
|
+
unit_with_proration_config: NewPlanUnitWithProrationPrice.UnitWithProrationConfig;
|
|
6814
8403
|
|
|
6815
8404
|
/**
|
|
6816
8405
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -6887,6 +8476,18 @@ export interface NewPlanUnitWithProrationPrice {
|
|
|
6887
8476
|
reference_id?: string | null;
|
|
6888
8477
|
}
|
|
6889
8478
|
|
|
8479
|
+
export namespace NewPlanUnitWithProrationPrice {
|
|
8480
|
+
/**
|
|
8481
|
+
* Configuration for unit_with_proration pricing
|
|
8482
|
+
*/
|
|
8483
|
+
export interface UnitWithProrationConfig {
|
|
8484
|
+
/**
|
|
8485
|
+
* Rate per unit of usage
|
|
8486
|
+
*/
|
|
8487
|
+
unit_amount: string;
|
|
8488
|
+
}
|
|
8489
|
+
}
|
|
8490
|
+
|
|
6890
8491
|
export interface NewUsageDiscount {
|
|
6891
8492
|
adjustment_type: 'usage_discount';
|
|
6892
8493
|
|
|
@@ -6944,6 +8545,9 @@ export interface OtherSubLineItem {
|
|
|
6944
8545
|
type: "'null'";
|
|
6945
8546
|
}
|
|
6946
8547
|
|
|
8548
|
+
/**
|
|
8549
|
+
* Configuration for package pricing
|
|
8550
|
+
*/
|
|
6947
8551
|
export interface PackageConfig {
|
|
6948
8552
|
/**
|
|
6949
8553
|
* A currency amount to rate usage by
|
|
@@ -7282,14 +8886,14 @@ export interface PlanPhaseUsageDiscountAdjustment {
|
|
|
7282
8886
|
*/
|
|
7283
8887
|
export type Price =
|
|
7284
8888
|
| Price.UnitPrice
|
|
7285
|
-
| Price.PackagePrice
|
|
7286
|
-
| Price.MatrixPrice
|
|
7287
8889
|
| Price.TieredPrice
|
|
7288
8890
|
| Price.BulkPrice
|
|
8891
|
+
| Price.PackagePrice
|
|
8892
|
+
| Price.MatrixPrice
|
|
7289
8893
|
| Price.ThresholdTotalAmountPrice
|
|
7290
8894
|
| Price.TieredPackagePrice
|
|
7291
|
-
| Price.GroupedTieredPrice
|
|
7292
8895
|
| Price.TieredWithMinimumPrice
|
|
8896
|
+
| Price.GroupedTieredPrice
|
|
7293
8897
|
| Price.TieredPackageWithMinimumPrice
|
|
7294
8898
|
| Price.PackageWithAllocationPrice
|
|
7295
8899
|
| Price.UnitWithPercentPrice
|
|
@@ -7297,16 +8901,16 @@ export type Price =
|
|
|
7297
8901
|
| Price.TieredWithProrationPrice
|
|
7298
8902
|
| Price.UnitWithProrationPrice
|
|
7299
8903
|
| Price.GroupedAllocationPrice
|
|
8904
|
+
| Price.BulkWithProrationPrice
|
|
7300
8905
|
| Price.GroupedWithProratedMinimumPrice
|
|
7301
8906
|
| Price.GroupedWithMeteredMinimumPrice
|
|
8907
|
+
| Price.GroupedWithMinMaxThresholdsPrice
|
|
7302
8908
|
| Price.MatrixWithDisplayNamePrice
|
|
7303
|
-
| Price.BulkWithProrationPrice
|
|
7304
8909
|
| Price.GroupedTieredPackagePrice
|
|
7305
8910
|
| Price.MaxGroupTieredPackagePrice
|
|
7306
8911
|
| Price.ScalableMatrixWithUnitPricingPrice
|
|
7307
8912
|
| Price.ScalableMatrixWithTieredPricingPrice
|
|
7308
8913
|
| Price.CumulativeGroupedBulkPrice
|
|
7309
|
-
| Price.GroupedWithMinMaxThresholdsPrice
|
|
7310
8914
|
| Price.MinimumCompositePrice;
|
|
7311
8915
|
|
|
7312
8916
|
export namespace Price {
|
|
@@ -7372,13 +8976,16 @@ export namespace Price {
|
|
|
7372
8976
|
*/
|
|
7373
8977
|
minimum_amount: string | null;
|
|
7374
8978
|
|
|
8979
|
+
/**
|
|
8980
|
+
* The pricing model type
|
|
8981
|
+
*/
|
|
7375
8982
|
model_type: 'unit';
|
|
7376
8983
|
|
|
7377
8984
|
name: string;
|
|
7378
8985
|
|
|
7379
8986
|
plan_phase_order: number | null;
|
|
7380
8987
|
|
|
7381
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
8988
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
7382
8989
|
|
|
7383
8990
|
/**
|
|
7384
8991
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -7386,12 +8993,15 @@ export namespace Price {
|
|
|
7386
8993
|
*/
|
|
7387
8994
|
replaces_price_id: string | null;
|
|
7388
8995
|
|
|
8996
|
+
/**
|
|
8997
|
+
* Configuration for unit pricing
|
|
8998
|
+
*/
|
|
7389
8999
|
unit_config: Shared.UnitConfig;
|
|
7390
9000
|
|
|
7391
9001
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
7392
9002
|
}
|
|
7393
9003
|
|
|
7394
|
-
export interface
|
|
9004
|
+
export interface TieredPrice {
|
|
7395
9005
|
id: string;
|
|
7396
9006
|
|
|
7397
9007
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -7453,15 +9063,16 @@ export namespace Price {
|
|
|
7453
9063
|
*/
|
|
7454
9064
|
minimum_amount: string | null;
|
|
7455
9065
|
|
|
7456
|
-
|
|
9066
|
+
/**
|
|
9067
|
+
* The pricing model type
|
|
9068
|
+
*/
|
|
9069
|
+
model_type: 'tiered';
|
|
7457
9070
|
|
|
7458
9071
|
name: string;
|
|
7459
9072
|
|
|
7460
|
-
package_config: Shared.PackageConfig;
|
|
7461
|
-
|
|
7462
9073
|
plan_phase_order: number | null;
|
|
7463
9074
|
|
|
7464
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
9075
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
7465
9076
|
|
|
7466
9077
|
/**
|
|
7467
9078
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -7469,16 +9080,26 @@ export namespace Price {
|
|
|
7469
9080
|
*/
|
|
7470
9081
|
replaces_price_id: string | null;
|
|
7471
9082
|
|
|
9083
|
+
/**
|
|
9084
|
+
* Configuration for tiered pricing
|
|
9085
|
+
*/
|
|
9086
|
+
tiered_config: Shared.TieredConfig;
|
|
9087
|
+
|
|
7472
9088
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
7473
9089
|
}
|
|
7474
9090
|
|
|
7475
|
-
export interface
|
|
9091
|
+
export interface BulkPrice {
|
|
7476
9092
|
id: string;
|
|
7477
9093
|
|
|
7478
9094
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
7479
9095
|
|
|
7480
9096
|
billing_cycle_configuration: Shared.BillingCycleConfiguration;
|
|
7481
9097
|
|
|
9098
|
+
/**
|
|
9099
|
+
* Configuration for bulk pricing
|
|
9100
|
+
*/
|
|
9101
|
+
bulk_config: Shared.BulkConfig;
|
|
9102
|
+
|
|
7482
9103
|
cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom';
|
|
7483
9104
|
|
|
7484
9105
|
composite_price_filters: Array<Shared.TransformPriceFilter> | null;
|
|
@@ -7506,8 +9127,6 @@ export namespace Price {
|
|
|
7506
9127
|
|
|
7507
9128
|
item: Shared.ItemSlim;
|
|
7508
9129
|
|
|
7509
|
-
matrix_config: Shared.MatrixConfig;
|
|
7510
|
-
|
|
7511
9130
|
/**
|
|
7512
9131
|
* @deprecated
|
|
7513
9132
|
*/
|
|
@@ -7536,13 +9155,16 @@ export namespace Price {
|
|
|
7536
9155
|
*/
|
|
7537
9156
|
minimum_amount: string | null;
|
|
7538
9157
|
|
|
7539
|
-
|
|
9158
|
+
/**
|
|
9159
|
+
* The pricing model type
|
|
9160
|
+
*/
|
|
9161
|
+
model_type: 'bulk';
|
|
7540
9162
|
|
|
7541
9163
|
name: string;
|
|
7542
9164
|
|
|
7543
9165
|
plan_phase_order: number | null;
|
|
7544
9166
|
|
|
7545
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
9167
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
7546
9168
|
|
|
7547
9169
|
/**
|
|
7548
9170
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -7553,7 +9175,7 @@ export namespace Price {
|
|
|
7553
9175
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
7554
9176
|
}
|
|
7555
9177
|
|
|
7556
|
-
export interface
|
|
9178
|
+
export interface PackagePrice {
|
|
7557
9179
|
id: string;
|
|
7558
9180
|
|
|
7559
9181
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -7615,13 +9237,21 @@ export namespace Price {
|
|
|
7615
9237
|
*/
|
|
7616
9238
|
minimum_amount: string | null;
|
|
7617
9239
|
|
|
7618
|
-
|
|
9240
|
+
/**
|
|
9241
|
+
* The pricing model type
|
|
9242
|
+
*/
|
|
9243
|
+
model_type: 'package';
|
|
7619
9244
|
|
|
7620
9245
|
name: string;
|
|
7621
9246
|
|
|
9247
|
+
/**
|
|
9248
|
+
* Configuration for package pricing
|
|
9249
|
+
*/
|
|
9250
|
+
package_config: Shared.PackageConfig;
|
|
9251
|
+
|
|
7622
9252
|
plan_phase_order: number | null;
|
|
7623
9253
|
|
|
7624
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
9254
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
7625
9255
|
|
|
7626
9256
|
/**
|
|
7627
9257
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -7629,20 +9259,16 @@ export namespace Price {
|
|
|
7629
9259
|
*/
|
|
7630
9260
|
replaces_price_id: string | null;
|
|
7631
9261
|
|
|
7632
|
-
tiered_config: Shared.TieredConfig;
|
|
7633
|
-
|
|
7634
9262
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
7635
9263
|
}
|
|
7636
9264
|
|
|
7637
|
-
export interface
|
|
9265
|
+
export interface MatrixPrice {
|
|
7638
9266
|
id: string;
|
|
7639
9267
|
|
|
7640
9268
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
7641
9269
|
|
|
7642
9270
|
billing_cycle_configuration: Shared.BillingCycleConfiguration;
|
|
7643
9271
|
|
|
7644
|
-
bulk_config: Shared.BulkConfig;
|
|
7645
|
-
|
|
7646
9272
|
cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom';
|
|
7647
9273
|
|
|
7648
9274
|
composite_price_filters: Array<Shared.TransformPriceFilter> | null;
|
|
@@ -7670,6 +9296,11 @@ export namespace Price {
|
|
|
7670
9296
|
|
|
7671
9297
|
item: Shared.ItemSlim;
|
|
7672
9298
|
|
|
9299
|
+
/**
|
|
9300
|
+
* Configuration for matrix pricing
|
|
9301
|
+
*/
|
|
9302
|
+
matrix_config: Shared.MatrixConfig;
|
|
9303
|
+
|
|
7673
9304
|
/**
|
|
7674
9305
|
* @deprecated
|
|
7675
9306
|
*/
|
|
@@ -7698,13 +9329,16 @@ export namespace Price {
|
|
|
7698
9329
|
*/
|
|
7699
9330
|
minimum_amount: string | null;
|
|
7700
9331
|
|
|
7701
|
-
|
|
9332
|
+
/**
|
|
9333
|
+
* The pricing model type
|
|
9334
|
+
*/
|
|
9335
|
+
model_type: 'matrix';
|
|
7702
9336
|
|
|
7703
9337
|
name: string;
|
|
7704
9338
|
|
|
7705
9339
|
plan_phase_order: number | null;
|
|
7706
9340
|
|
|
7707
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
9341
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
7708
9342
|
|
|
7709
9343
|
/**
|
|
7710
9344
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -7777,13 +9411,16 @@ export namespace Price {
|
|
|
7777
9411
|
*/
|
|
7778
9412
|
minimum_amount: string | null;
|
|
7779
9413
|
|
|
9414
|
+
/**
|
|
9415
|
+
* The pricing model type
|
|
9416
|
+
*/
|
|
7780
9417
|
model_type: 'threshold_total_amount';
|
|
7781
9418
|
|
|
7782
9419
|
name: string;
|
|
7783
9420
|
|
|
7784
9421
|
plan_phase_order: number | null;
|
|
7785
9422
|
|
|
7786
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
9423
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
7787
9424
|
|
|
7788
9425
|
/**
|
|
7789
9426
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -7791,11 +9428,49 @@ export namespace Price {
|
|
|
7791
9428
|
*/
|
|
7792
9429
|
replaces_price_id: string | null;
|
|
7793
9430
|
|
|
7794
|
-
|
|
9431
|
+
/**
|
|
9432
|
+
* Configuration for threshold_total_amount pricing
|
|
9433
|
+
*/
|
|
9434
|
+
threshold_total_amount_config: ThresholdTotalAmountPrice.ThresholdTotalAmountConfig;
|
|
7795
9435
|
|
|
7796
9436
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
7797
9437
|
}
|
|
7798
9438
|
|
|
9439
|
+
export namespace ThresholdTotalAmountPrice {
|
|
9440
|
+
/**
|
|
9441
|
+
* Configuration for threshold_total_amount pricing
|
|
9442
|
+
*/
|
|
9443
|
+
export interface ThresholdTotalAmountConfig {
|
|
9444
|
+
/**
|
|
9445
|
+
* When the quantity consumed passes a provided threshold, the configured total
|
|
9446
|
+
* will be charged
|
|
9447
|
+
*/
|
|
9448
|
+
consumption_table: Array<ThresholdTotalAmountConfig.ConsumptionTable>;
|
|
9449
|
+
|
|
9450
|
+
/**
|
|
9451
|
+
* If true, the unit price will be prorated to the billing period
|
|
9452
|
+
*/
|
|
9453
|
+
prorate?: boolean | null;
|
|
9454
|
+
}
|
|
9455
|
+
|
|
9456
|
+
export namespace ThresholdTotalAmountConfig {
|
|
9457
|
+
/**
|
|
9458
|
+
* Configuration for a single threshold
|
|
9459
|
+
*/
|
|
9460
|
+
export interface ConsumptionTable {
|
|
9461
|
+
/**
|
|
9462
|
+
* Quantity threshold
|
|
9463
|
+
*/
|
|
9464
|
+
threshold: string;
|
|
9465
|
+
|
|
9466
|
+
/**
|
|
9467
|
+
* Total amount for this threshold
|
|
9468
|
+
*/
|
|
9469
|
+
total_amount: string;
|
|
9470
|
+
}
|
|
9471
|
+
}
|
|
9472
|
+
}
|
|
9473
|
+
|
|
7799
9474
|
export interface TieredPackagePrice {
|
|
7800
9475
|
id: string;
|
|
7801
9476
|
|
|
@@ -7858,13 +9533,16 @@ export namespace Price {
|
|
|
7858
9533
|
*/
|
|
7859
9534
|
minimum_amount: string | null;
|
|
7860
9535
|
|
|
9536
|
+
/**
|
|
9537
|
+
* The pricing model type
|
|
9538
|
+
*/
|
|
7861
9539
|
model_type: 'tiered_package';
|
|
7862
9540
|
|
|
7863
9541
|
name: string;
|
|
7864
9542
|
|
|
7865
9543
|
plan_phase_order: number | null;
|
|
7866
9544
|
|
|
7867
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
9545
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
7868
9546
|
|
|
7869
9547
|
/**
|
|
7870
9548
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -7872,12 +9550,52 @@ export namespace Price {
|
|
|
7872
9550
|
*/
|
|
7873
9551
|
replaces_price_id: string | null;
|
|
7874
9552
|
|
|
7875
|
-
|
|
9553
|
+
/**
|
|
9554
|
+
* Configuration for tiered_package pricing
|
|
9555
|
+
*/
|
|
9556
|
+
tiered_package_config: TieredPackagePrice.TieredPackageConfig;
|
|
7876
9557
|
|
|
7877
9558
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
7878
9559
|
}
|
|
7879
9560
|
|
|
7880
|
-
export
|
|
9561
|
+
export namespace TieredPackagePrice {
|
|
9562
|
+
/**
|
|
9563
|
+
* Configuration for tiered_package pricing
|
|
9564
|
+
*/
|
|
9565
|
+
export interface TieredPackageConfig {
|
|
9566
|
+
/**
|
|
9567
|
+
* Package size
|
|
9568
|
+
*/
|
|
9569
|
+
package_size: string;
|
|
9570
|
+
|
|
9571
|
+
/**
|
|
9572
|
+
* Apply tiered pricing after rounding up the quantity to the package size. Tiers
|
|
9573
|
+
* are defined using exclusive lower bounds. The tier bounds are defined based on
|
|
9574
|
+
* the total quantity rather than the number of packages, so they must be multiples
|
|
9575
|
+
* of the package size.
|
|
9576
|
+
*/
|
|
9577
|
+
tiers: Array<TieredPackageConfig.Tier>;
|
|
9578
|
+
}
|
|
9579
|
+
|
|
9580
|
+
export namespace TieredPackageConfig {
|
|
9581
|
+
/**
|
|
9582
|
+
* Configuration for a single tier with business logic
|
|
9583
|
+
*/
|
|
9584
|
+
export interface Tier {
|
|
9585
|
+
/**
|
|
9586
|
+
* Price per package
|
|
9587
|
+
*/
|
|
9588
|
+
per_unit: string;
|
|
9589
|
+
|
|
9590
|
+
/**
|
|
9591
|
+
* Tier lower bound
|
|
9592
|
+
*/
|
|
9593
|
+
tier_lower_bound: string;
|
|
9594
|
+
}
|
|
9595
|
+
}
|
|
9596
|
+
}
|
|
9597
|
+
|
|
9598
|
+
export interface TieredWithMinimumPrice {
|
|
7881
9599
|
id: string;
|
|
7882
9600
|
|
|
7883
9601
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -7907,8 +9625,6 @@ export namespace Price {
|
|
|
7907
9625
|
|
|
7908
9626
|
fixed_price_quantity: number | null;
|
|
7909
9627
|
|
|
7910
|
-
grouped_tiered_config: { [key: string]: unknown };
|
|
7911
|
-
|
|
7912
9628
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
7913
9629
|
|
|
7914
9630
|
item: Shared.ItemSlim;
|
|
@@ -7941,13 +9657,16 @@ export namespace Price {
|
|
|
7941
9657
|
*/
|
|
7942
9658
|
minimum_amount: string | null;
|
|
7943
9659
|
|
|
7944
|
-
|
|
9660
|
+
/**
|
|
9661
|
+
* The pricing model type
|
|
9662
|
+
*/
|
|
9663
|
+
model_type: 'tiered_with_minimum';
|
|
7945
9664
|
|
|
7946
9665
|
name: string;
|
|
7947
9666
|
|
|
7948
9667
|
plan_phase_order: number | null;
|
|
7949
9668
|
|
|
7950
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
9669
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
7951
9670
|
|
|
7952
9671
|
/**
|
|
7953
9672
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -7955,13 +9674,63 @@ export namespace Price {
|
|
|
7955
9674
|
*/
|
|
7956
9675
|
replaces_price_id: string | null;
|
|
7957
9676
|
|
|
9677
|
+
/**
|
|
9678
|
+
* Configuration for tiered_with_minimum pricing
|
|
9679
|
+
*/
|
|
9680
|
+
tiered_with_minimum_config: TieredWithMinimumPrice.TieredWithMinimumConfig;
|
|
9681
|
+
|
|
7958
9682
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
7959
9683
|
}
|
|
7960
9684
|
|
|
7961
|
-
export
|
|
7962
|
-
|
|
9685
|
+
export namespace TieredWithMinimumPrice {
|
|
9686
|
+
/**
|
|
9687
|
+
* Configuration for tiered_with_minimum pricing
|
|
9688
|
+
*/
|
|
9689
|
+
export interface TieredWithMinimumConfig {
|
|
9690
|
+
/**
|
|
9691
|
+
* Tiered pricing with a minimum amount dependent on the volume tier. Tiers are
|
|
9692
|
+
* defined using exclusive lower bounds.
|
|
9693
|
+
*/
|
|
9694
|
+
tiers: Array<TieredWithMinimumConfig.Tier>;
|
|
7963
9695
|
|
|
7964
|
-
|
|
9696
|
+
/**
|
|
9697
|
+
* If true, tiers with an accrued amount of 0 will not be included in the rating.
|
|
9698
|
+
*/
|
|
9699
|
+
hide_zero_amount_tiers?: boolean;
|
|
9700
|
+
|
|
9701
|
+
/**
|
|
9702
|
+
* If true, the unit price will be prorated to the billing period
|
|
9703
|
+
*/
|
|
9704
|
+
prorate?: boolean;
|
|
9705
|
+
}
|
|
9706
|
+
|
|
9707
|
+
export namespace TieredWithMinimumConfig {
|
|
9708
|
+
/**
|
|
9709
|
+
* Configuration for a single tier
|
|
9710
|
+
*/
|
|
9711
|
+
export interface Tier {
|
|
9712
|
+
/**
|
|
9713
|
+
* Minimum amount
|
|
9714
|
+
*/
|
|
9715
|
+
minimum_amount: string;
|
|
9716
|
+
|
|
9717
|
+
/**
|
|
9718
|
+
* Tier lower bound
|
|
9719
|
+
*/
|
|
9720
|
+
tier_lower_bound: string;
|
|
9721
|
+
|
|
9722
|
+
/**
|
|
9723
|
+
* Per unit amount
|
|
9724
|
+
*/
|
|
9725
|
+
unit_amount: string;
|
|
9726
|
+
}
|
|
9727
|
+
}
|
|
9728
|
+
}
|
|
9729
|
+
|
|
9730
|
+
export interface GroupedTieredPrice {
|
|
9731
|
+
id: string;
|
|
9732
|
+
|
|
9733
|
+
billable_metric: Shared.BillableMetricTiny | null;
|
|
7965
9734
|
|
|
7966
9735
|
billing_cycle_configuration: Shared.BillingCycleConfiguration;
|
|
7967
9736
|
|
|
@@ -7988,6 +9757,11 @@ export namespace Price {
|
|
|
7988
9757
|
|
|
7989
9758
|
fixed_price_quantity: number | null;
|
|
7990
9759
|
|
|
9760
|
+
/**
|
|
9761
|
+
* Configuration for grouped_tiered pricing
|
|
9762
|
+
*/
|
|
9763
|
+
grouped_tiered_config: GroupedTieredPrice.GroupedTieredConfig;
|
|
9764
|
+
|
|
7991
9765
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
7992
9766
|
|
|
7993
9767
|
item: Shared.ItemSlim;
|
|
@@ -8020,13 +9794,16 @@ export namespace Price {
|
|
|
8020
9794
|
*/
|
|
8021
9795
|
minimum_amount: string | null;
|
|
8022
9796
|
|
|
8023
|
-
|
|
9797
|
+
/**
|
|
9798
|
+
* The pricing model type
|
|
9799
|
+
*/
|
|
9800
|
+
model_type: 'grouped_tiered';
|
|
8024
9801
|
|
|
8025
9802
|
name: string;
|
|
8026
9803
|
|
|
8027
9804
|
plan_phase_order: number | null;
|
|
8028
9805
|
|
|
8029
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
9806
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8030
9807
|
|
|
8031
9808
|
/**
|
|
8032
9809
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8034,11 +9811,44 @@ export namespace Price {
|
|
|
8034
9811
|
*/
|
|
8035
9812
|
replaces_price_id: string | null;
|
|
8036
9813
|
|
|
8037
|
-
tiered_with_minimum_config: { [key: string]: unknown };
|
|
8038
|
-
|
|
8039
9814
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8040
9815
|
}
|
|
8041
9816
|
|
|
9817
|
+
export namespace GroupedTieredPrice {
|
|
9818
|
+
/**
|
|
9819
|
+
* Configuration for grouped_tiered pricing
|
|
9820
|
+
*/
|
|
9821
|
+
export interface GroupedTieredConfig {
|
|
9822
|
+
/**
|
|
9823
|
+
* The billable metric property used to group before tiering
|
|
9824
|
+
*/
|
|
9825
|
+
grouping_key: string;
|
|
9826
|
+
|
|
9827
|
+
/**
|
|
9828
|
+
* Apply tiered pricing to each segment generated after grouping with the provided
|
|
9829
|
+
* key
|
|
9830
|
+
*/
|
|
9831
|
+
tiers: Array<GroupedTieredConfig.Tier>;
|
|
9832
|
+
}
|
|
9833
|
+
|
|
9834
|
+
export namespace GroupedTieredConfig {
|
|
9835
|
+
/**
|
|
9836
|
+
* Configuration for a single tier
|
|
9837
|
+
*/
|
|
9838
|
+
export interface Tier {
|
|
9839
|
+
/**
|
|
9840
|
+
* Tier lower bound
|
|
9841
|
+
*/
|
|
9842
|
+
tier_lower_bound: string;
|
|
9843
|
+
|
|
9844
|
+
/**
|
|
9845
|
+
* Per unit amount
|
|
9846
|
+
*/
|
|
9847
|
+
unit_amount: string;
|
|
9848
|
+
}
|
|
9849
|
+
}
|
|
9850
|
+
}
|
|
9851
|
+
|
|
8042
9852
|
export interface TieredPackageWithMinimumPrice {
|
|
8043
9853
|
id: string;
|
|
8044
9854
|
|
|
@@ -8101,13 +9911,16 @@ export namespace Price {
|
|
|
8101
9911
|
*/
|
|
8102
9912
|
minimum_amount: string | null;
|
|
8103
9913
|
|
|
9914
|
+
/**
|
|
9915
|
+
* The pricing model type
|
|
9916
|
+
*/
|
|
8104
9917
|
model_type: 'tiered_package_with_minimum';
|
|
8105
9918
|
|
|
8106
9919
|
name: string;
|
|
8107
9920
|
|
|
8108
9921
|
plan_phase_order: number | null;
|
|
8109
9922
|
|
|
8110
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
9923
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8111
9924
|
|
|
8112
9925
|
/**
|
|
8113
9926
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8115,11 +9928,54 @@ export namespace Price {
|
|
|
8115
9928
|
*/
|
|
8116
9929
|
replaces_price_id: string | null;
|
|
8117
9930
|
|
|
8118
|
-
|
|
9931
|
+
/**
|
|
9932
|
+
* Configuration for tiered_package_with_minimum pricing
|
|
9933
|
+
*/
|
|
9934
|
+
tiered_package_with_minimum_config: TieredPackageWithMinimumPrice.TieredPackageWithMinimumConfig;
|
|
8119
9935
|
|
|
8120
9936
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8121
9937
|
}
|
|
8122
9938
|
|
|
9939
|
+
export namespace TieredPackageWithMinimumPrice {
|
|
9940
|
+
/**
|
|
9941
|
+
* Configuration for tiered_package_with_minimum pricing
|
|
9942
|
+
*/
|
|
9943
|
+
export interface TieredPackageWithMinimumConfig {
|
|
9944
|
+
/**
|
|
9945
|
+
* Package size
|
|
9946
|
+
*/
|
|
9947
|
+
package_size: number;
|
|
9948
|
+
|
|
9949
|
+
/**
|
|
9950
|
+
* Apply tiered pricing after rounding up the quantity to the package size. Tiers
|
|
9951
|
+
* are defined using exclusive lower bounds.
|
|
9952
|
+
*/
|
|
9953
|
+
tiers: Array<TieredPackageWithMinimumConfig.Tier>;
|
|
9954
|
+
}
|
|
9955
|
+
|
|
9956
|
+
export namespace TieredPackageWithMinimumConfig {
|
|
9957
|
+
/**
|
|
9958
|
+
* Configuration for a single tier
|
|
9959
|
+
*/
|
|
9960
|
+
export interface Tier {
|
|
9961
|
+
/**
|
|
9962
|
+
* Minimum amount
|
|
9963
|
+
*/
|
|
9964
|
+
minimum_amount: string;
|
|
9965
|
+
|
|
9966
|
+
/**
|
|
9967
|
+
* Price per package
|
|
9968
|
+
*/
|
|
9969
|
+
per_unit: string;
|
|
9970
|
+
|
|
9971
|
+
/**
|
|
9972
|
+
* Tier lower bound
|
|
9973
|
+
*/
|
|
9974
|
+
tier_lower_bound: string;
|
|
9975
|
+
}
|
|
9976
|
+
}
|
|
9977
|
+
}
|
|
9978
|
+
|
|
8123
9979
|
export interface PackageWithAllocationPrice {
|
|
8124
9980
|
id: string;
|
|
8125
9981
|
|
|
@@ -8182,15 +10038,21 @@ export namespace Price {
|
|
|
8182
10038
|
*/
|
|
8183
10039
|
minimum_amount: string | null;
|
|
8184
10040
|
|
|
10041
|
+
/**
|
|
10042
|
+
* The pricing model type
|
|
10043
|
+
*/
|
|
8185
10044
|
model_type: 'package_with_allocation';
|
|
8186
10045
|
|
|
8187
10046
|
name: string;
|
|
8188
10047
|
|
|
8189
|
-
|
|
10048
|
+
/**
|
|
10049
|
+
* Configuration for package_with_allocation pricing
|
|
10050
|
+
*/
|
|
10051
|
+
package_with_allocation_config: PackageWithAllocationPrice.PackageWithAllocationConfig;
|
|
8190
10052
|
|
|
8191
10053
|
plan_phase_order: number | null;
|
|
8192
10054
|
|
|
8193
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
10055
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8194
10056
|
|
|
8195
10057
|
/**
|
|
8196
10058
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8201,6 +10063,28 @@ export namespace Price {
|
|
|
8201
10063
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8202
10064
|
}
|
|
8203
10065
|
|
|
10066
|
+
export namespace PackageWithAllocationPrice {
|
|
10067
|
+
/**
|
|
10068
|
+
* Configuration for package_with_allocation pricing
|
|
10069
|
+
*/
|
|
10070
|
+
export interface PackageWithAllocationConfig {
|
|
10071
|
+
/**
|
|
10072
|
+
* Usage allocation
|
|
10073
|
+
*/
|
|
10074
|
+
allocation: string;
|
|
10075
|
+
|
|
10076
|
+
/**
|
|
10077
|
+
* Price per package
|
|
10078
|
+
*/
|
|
10079
|
+
package_amount: string;
|
|
10080
|
+
|
|
10081
|
+
/**
|
|
10082
|
+
* Package size
|
|
10083
|
+
*/
|
|
10084
|
+
package_size: string;
|
|
10085
|
+
}
|
|
10086
|
+
}
|
|
10087
|
+
|
|
8204
10088
|
export interface UnitWithPercentPrice {
|
|
8205
10089
|
id: string;
|
|
8206
10090
|
|
|
@@ -8263,13 +10147,16 @@ export namespace Price {
|
|
|
8263
10147
|
*/
|
|
8264
10148
|
minimum_amount: string | null;
|
|
8265
10149
|
|
|
10150
|
+
/**
|
|
10151
|
+
* The pricing model type
|
|
10152
|
+
*/
|
|
8266
10153
|
model_type: 'unit_with_percent';
|
|
8267
10154
|
|
|
8268
10155
|
name: string;
|
|
8269
10156
|
|
|
8270
10157
|
plan_phase_order: number | null;
|
|
8271
10158
|
|
|
8272
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
10159
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8273
10160
|
|
|
8274
10161
|
/**
|
|
8275
10162
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8277,11 +10164,31 @@ export namespace Price {
|
|
|
8277
10164
|
*/
|
|
8278
10165
|
replaces_price_id: string | null;
|
|
8279
10166
|
|
|
8280
|
-
|
|
10167
|
+
/**
|
|
10168
|
+
* Configuration for unit_with_percent pricing
|
|
10169
|
+
*/
|
|
10170
|
+
unit_with_percent_config: UnitWithPercentPrice.UnitWithPercentConfig;
|
|
8281
10171
|
|
|
8282
10172
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8283
10173
|
}
|
|
8284
10174
|
|
|
10175
|
+
export namespace UnitWithPercentPrice {
|
|
10176
|
+
/**
|
|
10177
|
+
* Configuration for unit_with_percent pricing
|
|
10178
|
+
*/
|
|
10179
|
+
export interface UnitWithPercentConfig {
|
|
10180
|
+
/**
|
|
10181
|
+
* What percent, out of 100, of the calculated total to charge
|
|
10182
|
+
*/
|
|
10183
|
+
percent: string;
|
|
10184
|
+
|
|
10185
|
+
/**
|
|
10186
|
+
* Rate per unit of usage
|
|
10187
|
+
*/
|
|
10188
|
+
unit_amount: string;
|
|
10189
|
+
}
|
|
10190
|
+
}
|
|
10191
|
+
|
|
8285
10192
|
export interface MatrixWithAllocationPrice {
|
|
8286
10193
|
id: string;
|
|
8287
10194
|
|
|
@@ -8316,6 +10223,9 @@ export namespace Price {
|
|
|
8316
10223
|
|
|
8317
10224
|
item: Shared.ItemSlim;
|
|
8318
10225
|
|
|
10226
|
+
/**
|
|
10227
|
+
* Configuration for matrix_with_allocation pricing
|
|
10228
|
+
*/
|
|
8319
10229
|
matrix_with_allocation_config: Shared.MatrixWithAllocationConfig;
|
|
8320
10230
|
|
|
8321
10231
|
/**
|
|
@@ -8346,13 +10256,16 @@ export namespace Price {
|
|
|
8346
10256
|
*/
|
|
8347
10257
|
minimum_amount: string | null;
|
|
8348
10258
|
|
|
10259
|
+
/**
|
|
10260
|
+
* The pricing model type
|
|
10261
|
+
*/
|
|
8349
10262
|
model_type: 'matrix_with_allocation';
|
|
8350
10263
|
|
|
8351
10264
|
name: string;
|
|
8352
10265
|
|
|
8353
10266
|
plan_phase_order: number | null;
|
|
8354
10267
|
|
|
8355
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
10268
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8356
10269
|
|
|
8357
10270
|
/**
|
|
8358
10271
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8425,13 +10338,16 @@ export namespace Price {
|
|
|
8425
10338
|
*/
|
|
8426
10339
|
minimum_amount: string | null;
|
|
8427
10340
|
|
|
10341
|
+
/**
|
|
10342
|
+
* The pricing model type
|
|
10343
|
+
*/
|
|
8428
10344
|
model_type: 'tiered_with_proration';
|
|
8429
10345
|
|
|
8430
10346
|
name: string;
|
|
8431
10347
|
|
|
8432
10348
|
plan_phase_order: number | null;
|
|
8433
10349
|
|
|
8434
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
10350
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8435
10351
|
|
|
8436
10352
|
/**
|
|
8437
10353
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8439,11 +10355,44 @@ export namespace Price {
|
|
|
8439
10355
|
*/
|
|
8440
10356
|
replaces_price_id: string | null;
|
|
8441
10357
|
|
|
8442
|
-
|
|
10358
|
+
/**
|
|
10359
|
+
* Configuration for tiered_with_proration pricing
|
|
10360
|
+
*/
|
|
10361
|
+
tiered_with_proration_config: TieredWithProrationPrice.TieredWithProrationConfig;
|
|
8443
10362
|
|
|
8444
10363
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8445
10364
|
}
|
|
8446
10365
|
|
|
10366
|
+
export namespace TieredWithProrationPrice {
|
|
10367
|
+
/**
|
|
10368
|
+
* Configuration for tiered_with_proration pricing
|
|
10369
|
+
*/
|
|
10370
|
+
export interface TieredWithProrationConfig {
|
|
10371
|
+
/**
|
|
10372
|
+
* Tiers for rating based on total usage quantities into the specified tier with
|
|
10373
|
+
* proration
|
|
10374
|
+
*/
|
|
10375
|
+
tiers: Array<TieredWithProrationConfig.Tier>;
|
|
10376
|
+
}
|
|
10377
|
+
|
|
10378
|
+
export namespace TieredWithProrationConfig {
|
|
10379
|
+
/**
|
|
10380
|
+
* Configuration for a single tiered with proration tier
|
|
10381
|
+
*/
|
|
10382
|
+
export interface Tier {
|
|
10383
|
+
/**
|
|
10384
|
+
* Inclusive tier starting value
|
|
10385
|
+
*/
|
|
10386
|
+
tier_lower_bound: string;
|
|
10387
|
+
|
|
10388
|
+
/**
|
|
10389
|
+
* Amount per unit
|
|
10390
|
+
*/
|
|
10391
|
+
unit_amount: string;
|
|
10392
|
+
}
|
|
10393
|
+
}
|
|
10394
|
+
}
|
|
10395
|
+
|
|
8447
10396
|
export interface UnitWithProrationPrice {
|
|
8448
10397
|
id: string;
|
|
8449
10398
|
|
|
@@ -8506,13 +10455,16 @@ export namespace Price {
|
|
|
8506
10455
|
*/
|
|
8507
10456
|
minimum_amount: string | null;
|
|
8508
10457
|
|
|
10458
|
+
/**
|
|
10459
|
+
* The pricing model type
|
|
10460
|
+
*/
|
|
8509
10461
|
model_type: 'unit_with_proration';
|
|
8510
10462
|
|
|
8511
10463
|
name: string;
|
|
8512
10464
|
|
|
8513
10465
|
plan_phase_order: number | null;
|
|
8514
10466
|
|
|
8515
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
10467
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8516
10468
|
|
|
8517
10469
|
/**
|
|
8518
10470
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8520,11 +10472,26 @@ export namespace Price {
|
|
|
8520
10472
|
*/
|
|
8521
10473
|
replaces_price_id: string | null;
|
|
8522
10474
|
|
|
8523
|
-
|
|
10475
|
+
/**
|
|
10476
|
+
* Configuration for unit_with_proration pricing
|
|
10477
|
+
*/
|
|
10478
|
+
unit_with_proration_config: UnitWithProrationPrice.UnitWithProrationConfig;
|
|
8524
10479
|
|
|
8525
10480
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8526
10481
|
}
|
|
8527
10482
|
|
|
10483
|
+
export namespace UnitWithProrationPrice {
|
|
10484
|
+
/**
|
|
10485
|
+
* Configuration for unit_with_proration pricing
|
|
10486
|
+
*/
|
|
10487
|
+
export interface UnitWithProrationConfig {
|
|
10488
|
+
/**
|
|
10489
|
+
* Rate per unit of usage
|
|
10490
|
+
*/
|
|
10491
|
+
unit_amount: string;
|
|
10492
|
+
}
|
|
10493
|
+
}
|
|
10494
|
+
|
|
8528
10495
|
export interface GroupedAllocationPrice {
|
|
8529
10496
|
id: string;
|
|
8530
10497
|
|
|
@@ -8555,7 +10522,10 @@ export namespace Price {
|
|
|
8555
10522
|
|
|
8556
10523
|
fixed_price_quantity: number | null;
|
|
8557
10524
|
|
|
8558
|
-
|
|
10525
|
+
/**
|
|
10526
|
+
* Configuration for grouped_allocation pricing
|
|
10527
|
+
*/
|
|
10528
|
+
grouped_allocation_config: GroupedAllocationPrice.GroupedAllocationConfig;
|
|
8559
10529
|
|
|
8560
10530
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
8561
10531
|
|
|
@@ -8589,13 +10559,16 @@ export namespace Price {
|
|
|
8589
10559
|
*/
|
|
8590
10560
|
minimum_amount: string | null;
|
|
8591
10561
|
|
|
10562
|
+
/**
|
|
10563
|
+
* The pricing model type
|
|
10564
|
+
*/
|
|
8592
10565
|
model_type: 'grouped_allocation';
|
|
8593
10566
|
|
|
8594
10567
|
name: string;
|
|
8595
10568
|
|
|
8596
10569
|
plan_phase_order: number | null;
|
|
8597
10570
|
|
|
8598
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
10571
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8599
10572
|
|
|
8600
10573
|
/**
|
|
8601
10574
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8606,13 +10579,40 @@ export namespace Price {
|
|
|
8606
10579
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8607
10580
|
}
|
|
8608
10581
|
|
|
8609
|
-
export
|
|
10582
|
+
export namespace GroupedAllocationPrice {
|
|
10583
|
+
/**
|
|
10584
|
+
* Configuration for grouped_allocation pricing
|
|
10585
|
+
*/
|
|
10586
|
+
export interface GroupedAllocationConfig {
|
|
10587
|
+
/**
|
|
10588
|
+
* Usage allocation per group
|
|
10589
|
+
*/
|
|
10590
|
+
allocation: string;
|
|
10591
|
+
|
|
10592
|
+
/**
|
|
10593
|
+
* How to determine the groups that should each be allocated some quantity
|
|
10594
|
+
*/
|
|
10595
|
+
grouping_key: string;
|
|
10596
|
+
|
|
10597
|
+
/**
|
|
10598
|
+
* Unit rate for post-allocation
|
|
10599
|
+
*/
|
|
10600
|
+
overage_unit_rate: string;
|
|
10601
|
+
}
|
|
10602
|
+
}
|
|
10603
|
+
|
|
10604
|
+
export interface BulkWithProrationPrice {
|
|
8610
10605
|
id: string;
|
|
8611
10606
|
|
|
8612
10607
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
8613
10608
|
|
|
8614
10609
|
billing_cycle_configuration: Shared.BillingCycleConfiguration;
|
|
8615
10610
|
|
|
10611
|
+
/**
|
|
10612
|
+
* Configuration for bulk_with_proration pricing
|
|
10613
|
+
*/
|
|
10614
|
+
bulk_with_proration_config: BulkWithProrationPrice.BulkWithProrationConfig;
|
|
10615
|
+
|
|
8616
10616
|
cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom';
|
|
8617
10617
|
|
|
8618
10618
|
composite_price_filters: Array<Shared.TransformPriceFilter> | null;
|
|
@@ -8636,8 +10636,6 @@ export namespace Price {
|
|
|
8636
10636
|
|
|
8637
10637
|
fixed_price_quantity: number | null;
|
|
8638
10638
|
|
|
8639
|
-
grouped_with_prorated_minimum_config: { [key: string]: unknown };
|
|
8640
|
-
|
|
8641
10639
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
8642
10640
|
|
|
8643
10641
|
item: Shared.ItemSlim;
|
|
@@ -8670,13 +10668,16 @@ export namespace Price {
|
|
|
8670
10668
|
*/
|
|
8671
10669
|
minimum_amount: string | null;
|
|
8672
10670
|
|
|
8673
|
-
|
|
10671
|
+
/**
|
|
10672
|
+
* The pricing model type
|
|
10673
|
+
*/
|
|
10674
|
+
model_type: 'bulk_with_proration';
|
|
8674
10675
|
|
|
8675
10676
|
name: string;
|
|
8676
10677
|
|
|
8677
10678
|
plan_phase_order: number | null;
|
|
8678
10679
|
|
|
8679
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
10680
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8680
10681
|
|
|
8681
10682
|
/**
|
|
8682
10683
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8687,7 +10688,36 @@ export namespace Price {
|
|
|
8687
10688
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8688
10689
|
}
|
|
8689
10690
|
|
|
8690
|
-
export
|
|
10691
|
+
export namespace BulkWithProrationPrice {
|
|
10692
|
+
/**
|
|
10693
|
+
* Configuration for bulk_with_proration pricing
|
|
10694
|
+
*/
|
|
10695
|
+
export interface BulkWithProrationConfig {
|
|
10696
|
+
/**
|
|
10697
|
+
* Bulk tiers for rating based on total usage volume
|
|
10698
|
+
*/
|
|
10699
|
+
tiers: Array<BulkWithProrationConfig.Tier>;
|
|
10700
|
+
}
|
|
10701
|
+
|
|
10702
|
+
export namespace BulkWithProrationConfig {
|
|
10703
|
+
/**
|
|
10704
|
+
* Configuration for a single bulk pricing tier with proration
|
|
10705
|
+
*/
|
|
10706
|
+
export interface Tier {
|
|
10707
|
+
/**
|
|
10708
|
+
* Cost per unit
|
|
10709
|
+
*/
|
|
10710
|
+
unit_amount: string;
|
|
10711
|
+
|
|
10712
|
+
/**
|
|
10713
|
+
* The lower bound for this tier
|
|
10714
|
+
*/
|
|
10715
|
+
tier_lower_bound?: string | null;
|
|
10716
|
+
}
|
|
10717
|
+
}
|
|
10718
|
+
}
|
|
10719
|
+
|
|
10720
|
+
export interface GroupedWithProratedMinimumPrice {
|
|
8691
10721
|
id: string;
|
|
8692
10722
|
|
|
8693
10723
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -8717,7 +10747,10 @@ export namespace Price {
|
|
|
8717
10747
|
|
|
8718
10748
|
fixed_price_quantity: number | null;
|
|
8719
10749
|
|
|
8720
|
-
|
|
10750
|
+
/**
|
|
10751
|
+
* Configuration for grouped_with_prorated_minimum pricing
|
|
10752
|
+
*/
|
|
10753
|
+
grouped_with_prorated_minimum_config: GroupedWithProratedMinimumPrice.GroupedWithProratedMinimumConfig;
|
|
8721
10754
|
|
|
8722
10755
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
8723
10756
|
|
|
@@ -8751,13 +10784,16 @@ export namespace Price {
|
|
|
8751
10784
|
*/
|
|
8752
10785
|
minimum_amount: string | null;
|
|
8753
10786
|
|
|
8754
|
-
|
|
10787
|
+
/**
|
|
10788
|
+
* The pricing model type
|
|
10789
|
+
*/
|
|
10790
|
+
model_type: 'grouped_with_prorated_minimum';
|
|
8755
10791
|
|
|
8756
10792
|
name: string;
|
|
8757
10793
|
|
|
8758
10794
|
plan_phase_order: number | null;
|
|
8759
10795
|
|
|
8760
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
10796
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8761
10797
|
|
|
8762
10798
|
/**
|
|
8763
10799
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8768,7 +10804,29 @@ export namespace Price {
|
|
|
8768
10804
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8769
10805
|
}
|
|
8770
10806
|
|
|
8771
|
-
export
|
|
10807
|
+
export namespace GroupedWithProratedMinimumPrice {
|
|
10808
|
+
/**
|
|
10809
|
+
* Configuration for grouped_with_prorated_minimum pricing
|
|
10810
|
+
*/
|
|
10811
|
+
export interface GroupedWithProratedMinimumConfig {
|
|
10812
|
+
/**
|
|
10813
|
+
* How to determine the groups that should each have a minimum
|
|
10814
|
+
*/
|
|
10815
|
+
grouping_key: string;
|
|
10816
|
+
|
|
10817
|
+
/**
|
|
10818
|
+
* The minimum amount to charge per group
|
|
10819
|
+
*/
|
|
10820
|
+
minimum: string;
|
|
10821
|
+
|
|
10822
|
+
/**
|
|
10823
|
+
* The amount to charge per unit
|
|
10824
|
+
*/
|
|
10825
|
+
unit_rate: string;
|
|
10826
|
+
}
|
|
10827
|
+
}
|
|
10828
|
+
|
|
10829
|
+
export interface GroupedWithMeteredMinimumPrice {
|
|
8772
10830
|
id: string;
|
|
8773
10831
|
|
|
8774
10832
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -8798,12 +10856,15 @@ export namespace Price {
|
|
|
8798
10856
|
|
|
8799
10857
|
fixed_price_quantity: number | null;
|
|
8800
10858
|
|
|
10859
|
+
/**
|
|
10860
|
+
* Configuration for grouped_with_metered_minimum pricing
|
|
10861
|
+
*/
|
|
10862
|
+
grouped_with_metered_minimum_config: GroupedWithMeteredMinimumPrice.GroupedWithMeteredMinimumConfig;
|
|
10863
|
+
|
|
8801
10864
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
8802
10865
|
|
|
8803
10866
|
item: Shared.ItemSlim;
|
|
8804
10867
|
|
|
8805
|
-
matrix_with_display_name_config: { [key: string]: unknown };
|
|
8806
|
-
|
|
8807
10868
|
/**
|
|
8808
10869
|
* @deprecated
|
|
8809
10870
|
*/
|
|
@@ -8832,13 +10893,16 @@ export namespace Price {
|
|
|
8832
10893
|
*/
|
|
8833
10894
|
minimum_amount: string | null;
|
|
8834
10895
|
|
|
8835
|
-
|
|
10896
|
+
/**
|
|
10897
|
+
* The pricing model type
|
|
10898
|
+
*/
|
|
10899
|
+
model_type: 'grouped_with_metered_minimum';
|
|
8836
10900
|
|
|
8837
10901
|
name: string;
|
|
8838
10902
|
|
|
8839
10903
|
plan_phase_order: number | null;
|
|
8840
10904
|
|
|
8841
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
10905
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8842
10906
|
|
|
8843
10907
|
/**
|
|
8844
10908
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8849,15 +10913,84 @@ export namespace Price {
|
|
|
8849
10913
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8850
10914
|
}
|
|
8851
10915
|
|
|
8852
|
-
export
|
|
10916
|
+
export namespace GroupedWithMeteredMinimumPrice {
|
|
10917
|
+
/**
|
|
10918
|
+
* Configuration for grouped_with_metered_minimum pricing
|
|
10919
|
+
*/
|
|
10920
|
+
export interface GroupedWithMeteredMinimumConfig {
|
|
10921
|
+
/**
|
|
10922
|
+
* Used to partition the usage into groups. The minimum amount is applied to each
|
|
10923
|
+
* group.
|
|
10924
|
+
*/
|
|
10925
|
+
grouping_key: string;
|
|
10926
|
+
|
|
10927
|
+
/**
|
|
10928
|
+
* The minimum amount to charge per group per unit
|
|
10929
|
+
*/
|
|
10930
|
+
minimum_unit_amount: string;
|
|
10931
|
+
|
|
10932
|
+
/**
|
|
10933
|
+
* Used to determine the unit rate
|
|
10934
|
+
*/
|
|
10935
|
+
pricing_key: string;
|
|
10936
|
+
|
|
10937
|
+
/**
|
|
10938
|
+
* Scale the unit rates by the scaling factor.
|
|
10939
|
+
*/
|
|
10940
|
+
scaling_factors: Array<GroupedWithMeteredMinimumConfig.ScalingFactor>;
|
|
10941
|
+
|
|
10942
|
+
/**
|
|
10943
|
+
* Used to determine the unit rate scaling factor
|
|
10944
|
+
*/
|
|
10945
|
+
scaling_key: string;
|
|
10946
|
+
|
|
10947
|
+
/**
|
|
10948
|
+
* Apply per unit pricing to each pricing value. The minimum amount is applied any
|
|
10949
|
+
* unmatched usage.
|
|
10950
|
+
*/
|
|
10951
|
+
unit_amounts: Array<GroupedWithMeteredMinimumConfig.UnitAmount>;
|
|
10952
|
+
}
|
|
10953
|
+
|
|
10954
|
+
export namespace GroupedWithMeteredMinimumConfig {
|
|
10955
|
+
/**
|
|
10956
|
+
* Configuration for a scaling factor
|
|
10957
|
+
*/
|
|
10958
|
+
export interface ScalingFactor {
|
|
10959
|
+
/**
|
|
10960
|
+
* Scaling factor
|
|
10961
|
+
*/
|
|
10962
|
+
scaling_factor: string;
|
|
10963
|
+
|
|
10964
|
+
/**
|
|
10965
|
+
* Scaling value
|
|
10966
|
+
*/
|
|
10967
|
+
scaling_value: string;
|
|
10968
|
+
}
|
|
10969
|
+
|
|
10970
|
+
/**
|
|
10971
|
+
* Configuration for a unit amount
|
|
10972
|
+
*/
|
|
10973
|
+
export interface UnitAmount {
|
|
10974
|
+
/**
|
|
10975
|
+
* Pricing value
|
|
10976
|
+
*/
|
|
10977
|
+
pricing_value: string;
|
|
10978
|
+
|
|
10979
|
+
/**
|
|
10980
|
+
* Per unit amount
|
|
10981
|
+
*/
|
|
10982
|
+
unit_amount: string;
|
|
10983
|
+
}
|
|
10984
|
+
}
|
|
10985
|
+
}
|
|
10986
|
+
|
|
10987
|
+
export interface GroupedWithMinMaxThresholdsPrice {
|
|
8853
10988
|
id: string;
|
|
8854
10989
|
|
|
8855
10990
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
8856
10991
|
|
|
8857
10992
|
billing_cycle_configuration: Shared.BillingCycleConfiguration;
|
|
8858
10993
|
|
|
8859
|
-
bulk_with_proration_config: { [key: string]: unknown };
|
|
8860
|
-
|
|
8861
10994
|
cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom';
|
|
8862
10995
|
|
|
8863
10996
|
composite_price_filters: Array<Shared.TransformPriceFilter> | null;
|
|
@@ -8881,6 +11014,11 @@ export namespace Price {
|
|
|
8881
11014
|
|
|
8882
11015
|
fixed_price_quantity: number | null;
|
|
8883
11016
|
|
|
11017
|
+
/**
|
|
11018
|
+
* Configuration for grouped_with_min_max_thresholds pricing
|
|
11019
|
+
*/
|
|
11020
|
+
grouped_with_min_max_thresholds_config: GroupedWithMinMaxThresholdsPrice.GroupedWithMinMaxThresholdsConfig;
|
|
11021
|
+
|
|
8884
11022
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
8885
11023
|
|
|
8886
11024
|
item: Shared.ItemSlim;
|
|
@@ -8913,13 +11051,16 @@ export namespace Price {
|
|
|
8913
11051
|
*/
|
|
8914
11052
|
minimum_amount: string | null;
|
|
8915
11053
|
|
|
8916
|
-
|
|
11054
|
+
/**
|
|
11055
|
+
* The pricing model type
|
|
11056
|
+
*/
|
|
11057
|
+
model_type: 'grouped_with_min_max_thresholds';
|
|
8917
11058
|
|
|
8918
11059
|
name: string;
|
|
8919
11060
|
|
|
8920
11061
|
plan_phase_order: number | null;
|
|
8921
11062
|
|
|
8922
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
11063
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8923
11064
|
|
|
8924
11065
|
/**
|
|
8925
11066
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8930,7 +11071,34 @@ export namespace Price {
|
|
|
8930
11071
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8931
11072
|
}
|
|
8932
11073
|
|
|
8933
|
-
export
|
|
11074
|
+
export namespace GroupedWithMinMaxThresholdsPrice {
|
|
11075
|
+
/**
|
|
11076
|
+
* Configuration for grouped_with_min_max_thresholds pricing
|
|
11077
|
+
*/
|
|
11078
|
+
export interface GroupedWithMinMaxThresholdsConfig {
|
|
11079
|
+
/**
|
|
11080
|
+
* The event property used to group before applying thresholds
|
|
11081
|
+
*/
|
|
11082
|
+
grouping_key: string;
|
|
11083
|
+
|
|
11084
|
+
/**
|
|
11085
|
+
* The maximum amount to charge each group
|
|
11086
|
+
*/
|
|
11087
|
+
maximum_charge: string;
|
|
11088
|
+
|
|
11089
|
+
/**
|
|
11090
|
+
* The minimum amount to charge each group, regardless of usage
|
|
11091
|
+
*/
|
|
11092
|
+
minimum_charge: string;
|
|
11093
|
+
|
|
11094
|
+
/**
|
|
11095
|
+
* The base price charged per group
|
|
11096
|
+
*/
|
|
11097
|
+
per_unit_rate: string;
|
|
11098
|
+
}
|
|
11099
|
+
}
|
|
11100
|
+
|
|
11101
|
+
export interface MatrixWithDisplayNamePrice {
|
|
8934
11102
|
id: string;
|
|
8935
11103
|
|
|
8936
11104
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -8960,12 +11128,15 @@ export namespace Price {
|
|
|
8960
11128
|
|
|
8961
11129
|
fixed_price_quantity: number | null;
|
|
8962
11130
|
|
|
8963
|
-
grouped_tiered_package_config: { [key: string]: unknown };
|
|
8964
|
-
|
|
8965
11131
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
8966
11132
|
|
|
8967
11133
|
item: Shared.ItemSlim;
|
|
8968
11134
|
|
|
11135
|
+
/**
|
|
11136
|
+
* Configuration for matrix_with_display_name pricing
|
|
11137
|
+
*/
|
|
11138
|
+
matrix_with_display_name_config: MatrixWithDisplayNamePrice.MatrixWithDisplayNameConfig;
|
|
11139
|
+
|
|
8969
11140
|
/**
|
|
8970
11141
|
* @deprecated
|
|
8971
11142
|
*/
|
|
@@ -8994,13 +11165,16 @@ export namespace Price {
|
|
|
8994
11165
|
*/
|
|
8995
11166
|
minimum_amount: string | null;
|
|
8996
11167
|
|
|
8997
|
-
|
|
11168
|
+
/**
|
|
11169
|
+
* The pricing model type
|
|
11170
|
+
*/
|
|
11171
|
+
model_type: 'matrix_with_display_name';
|
|
8998
11172
|
|
|
8999
11173
|
name: string;
|
|
9000
11174
|
|
|
9001
11175
|
plan_phase_order: number | null;
|
|
9002
11176
|
|
|
9003
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
11177
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
9004
11178
|
|
|
9005
11179
|
/**
|
|
9006
11180
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -9011,7 +11185,46 @@ export namespace Price {
|
|
|
9011
11185
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
9012
11186
|
}
|
|
9013
11187
|
|
|
9014
|
-
export
|
|
11188
|
+
export namespace MatrixWithDisplayNamePrice {
|
|
11189
|
+
/**
|
|
11190
|
+
* Configuration for matrix_with_display_name pricing
|
|
11191
|
+
*/
|
|
11192
|
+
export interface MatrixWithDisplayNameConfig {
|
|
11193
|
+
/**
|
|
11194
|
+
* Used to determine the unit rate
|
|
11195
|
+
*/
|
|
11196
|
+
dimension: string;
|
|
11197
|
+
|
|
11198
|
+
/**
|
|
11199
|
+
* Apply per unit pricing to each dimension value
|
|
11200
|
+
*/
|
|
11201
|
+
unit_amounts: Array<MatrixWithDisplayNameConfig.UnitAmount>;
|
|
11202
|
+
}
|
|
11203
|
+
|
|
11204
|
+
export namespace MatrixWithDisplayNameConfig {
|
|
11205
|
+
/**
|
|
11206
|
+
* Configuration for a unit amount item
|
|
11207
|
+
*/
|
|
11208
|
+
export interface UnitAmount {
|
|
11209
|
+
/**
|
|
11210
|
+
* The dimension value
|
|
11211
|
+
*/
|
|
11212
|
+
dimension_value: string;
|
|
11213
|
+
|
|
11214
|
+
/**
|
|
11215
|
+
* Display name for this dimension value
|
|
11216
|
+
*/
|
|
11217
|
+
display_name: string;
|
|
11218
|
+
|
|
11219
|
+
/**
|
|
11220
|
+
* Per unit amount
|
|
11221
|
+
*/
|
|
11222
|
+
unit_amount: string;
|
|
11223
|
+
}
|
|
11224
|
+
}
|
|
11225
|
+
}
|
|
11226
|
+
|
|
11227
|
+
export interface GroupedTieredPackagePrice {
|
|
9015
11228
|
id: string;
|
|
9016
11229
|
|
|
9017
11230
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -9041,12 +11254,15 @@ export namespace Price {
|
|
|
9041
11254
|
|
|
9042
11255
|
fixed_price_quantity: number | null;
|
|
9043
11256
|
|
|
11257
|
+
/**
|
|
11258
|
+
* Configuration for grouped_tiered_package pricing
|
|
11259
|
+
*/
|
|
11260
|
+
grouped_tiered_package_config: GroupedTieredPackagePrice.GroupedTieredPackageConfig;
|
|
11261
|
+
|
|
9044
11262
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
9045
11263
|
|
|
9046
11264
|
item: Shared.ItemSlim;
|
|
9047
11265
|
|
|
9048
|
-
max_group_tiered_package_config: { [key: string]: unknown };
|
|
9049
|
-
|
|
9050
11266
|
/**
|
|
9051
11267
|
* @deprecated
|
|
9052
11268
|
*/
|
|
@@ -9075,13 +11291,16 @@ export namespace Price {
|
|
|
9075
11291
|
*/
|
|
9076
11292
|
minimum_amount: string | null;
|
|
9077
11293
|
|
|
9078
|
-
|
|
11294
|
+
/**
|
|
11295
|
+
* The pricing model type
|
|
11296
|
+
*/
|
|
11297
|
+
model_type: 'grouped_tiered_package';
|
|
9079
11298
|
|
|
9080
11299
|
name: string;
|
|
9081
11300
|
|
|
9082
11301
|
plan_phase_order: number | null;
|
|
9083
11302
|
|
|
9084
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
11303
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
9085
11304
|
|
|
9086
11305
|
/**
|
|
9087
11306
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -9092,7 +11311,47 @@ export namespace Price {
|
|
|
9092
11311
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
9093
11312
|
}
|
|
9094
11313
|
|
|
9095
|
-
export
|
|
11314
|
+
export namespace GroupedTieredPackagePrice {
|
|
11315
|
+
/**
|
|
11316
|
+
* Configuration for grouped_tiered_package pricing
|
|
11317
|
+
*/
|
|
11318
|
+
export interface GroupedTieredPackageConfig {
|
|
11319
|
+
/**
|
|
11320
|
+
* The event property used to group before tiering
|
|
11321
|
+
*/
|
|
11322
|
+
grouping_key: string;
|
|
11323
|
+
|
|
11324
|
+
/**
|
|
11325
|
+
* Package size
|
|
11326
|
+
*/
|
|
11327
|
+
package_size: string;
|
|
11328
|
+
|
|
11329
|
+
/**
|
|
11330
|
+
* Apply tiered pricing after rounding up the quantity to the package size. Tiers
|
|
11331
|
+
* are defined using exclusive lower bounds.
|
|
11332
|
+
*/
|
|
11333
|
+
tiers: Array<GroupedTieredPackageConfig.Tier>;
|
|
11334
|
+
}
|
|
11335
|
+
|
|
11336
|
+
export namespace GroupedTieredPackageConfig {
|
|
11337
|
+
/**
|
|
11338
|
+
* Configuration for a single tier
|
|
11339
|
+
*/
|
|
11340
|
+
export interface Tier {
|
|
11341
|
+
/**
|
|
11342
|
+
* Price per package
|
|
11343
|
+
*/
|
|
11344
|
+
per_unit: string;
|
|
11345
|
+
|
|
11346
|
+
/**
|
|
11347
|
+
* Tier lower bound
|
|
11348
|
+
*/
|
|
11349
|
+
tier_lower_bound: string;
|
|
11350
|
+
}
|
|
11351
|
+
}
|
|
11352
|
+
}
|
|
11353
|
+
|
|
11354
|
+
export interface MaxGroupTieredPackagePrice {
|
|
9096
11355
|
id: string;
|
|
9097
11356
|
|
|
9098
11357
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -9126,6 +11385,11 @@ export namespace Price {
|
|
|
9126
11385
|
|
|
9127
11386
|
item: Shared.ItemSlim;
|
|
9128
11387
|
|
|
11388
|
+
/**
|
|
11389
|
+
* Configuration for max_group_tiered_package pricing
|
|
11390
|
+
*/
|
|
11391
|
+
max_group_tiered_package_config: MaxGroupTieredPackagePrice.MaxGroupTieredPackageConfig;
|
|
11392
|
+
|
|
9129
11393
|
/**
|
|
9130
11394
|
* @deprecated
|
|
9131
11395
|
*/
|
|
@@ -9154,13 +11418,16 @@ export namespace Price {
|
|
|
9154
11418
|
*/
|
|
9155
11419
|
minimum_amount: string | null;
|
|
9156
11420
|
|
|
9157
|
-
|
|
11421
|
+
/**
|
|
11422
|
+
* The pricing model type
|
|
11423
|
+
*/
|
|
11424
|
+
model_type: 'max_group_tiered_package';
|
|
9158
11425
|
|
|
9159
11426
|
name: string;
|
|
9160
11427
|
|
|
9161
11428
|
plan_phase_order: number | null;
|
|
9162
11429
|
|
|
9163
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
11430
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
9164
11431
|
|
|
9165
11432
|
/**
|
|
9166
11433
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -9168,12 +11435,49 @@ export namespace Price {
|
|
|
9168
11435
|
*/
|
|
9169
11436
|
replaces_price_id: string | null;
|
|
9170
11437
|
|
|
9171
|
-
scalable_matrix_with_unit_pricing_config: { [key: string]: unknown };
|
|
9172
|
-
|
|
9173
11438
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
9174
11439
|
}
|
|
9175
11440
|
|
|
9176
|
-
export
|
|
11441
|
+
export namespace MaxGroupTieredPackagePrice {
|
|
11442
|
+
/**
|
|
11443
|
+
* Configuration for max_group_tiered_package pricing
|
|
11444
|
+
*/
|
|
11445
|
+
export interface MaxGroupTieredPackageConfig {
|
|
11446
|
+
/**
|
|
11447
|
+
* The event property used to group before tiering the group with the highest value
|
|
11448
|
+
*/
|
|
11449
|
+
grouping_key: string;
|
|
11450
|
+
|
|
11451
|
+
/**
|
|
11452
|
+
* Package size
|
|
11453
|
+
*/
|
|
11454
|
+
package_size: string;
|
|
11455
|
+
|
|
11456
|
+
/**
|
|
11457
|
+
* Apply tiered pricing to the largest group after grouping with the provided key.
|
|
11458
|
+
*/
|
|
11459
|
+
tiers: Array<MaxGroupTieredPackageConfig.Tier>;
|
|
11460
|
+
}
|
|
11461
|
+
|
|
11462
|
+
export namespace MaxGroupTieredPackageConfig {
|
|
11463
|
+
/**
|
|
11464
|
+
* Configuration for a single tier
|
|
11465
|
+
*/
|
|
11466
|
+
export interface Tier {
|
|
11467
|
+
/**
|
|
11468
|
+
* Tier lower bound
|
|
11469
|
+
*/
|
|
11470
|
+
tier_lower_bound: string;
|
|
11471
|
+
|
|
11472
|
+
/**
|
|
11473
|
+
* Per unit amount
|
|
11474
|
+
*/
|
|
11475
|
+
unit_amount: string;
|
|
11476
|
+
}
|
|
11477
|
+
}
|
|
11478
|
+
}
|
|
11479
|
+
|
|
11480
|
+
export interface ScalableMatrixWithUnitPricingPrice {
|
|
9177
11481
|
id: string;
|
|
9178
11482
|
|
|
9179
11483
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -9235,13 +11539,16 @@ export namespace Price {
|
|
|
9235
11539
|
*/
|
|
9236
11540
|
minimum_amount: string | null;
|
|
9237
11541
|
|
|
9238
|
-
|
|
11542
|
+
/**
|
|
11543
|
+
* The pricing model type
|
|
11544
|
+
*/
|
|
11545
|
+
model_type: 'scalable_matrix_with_unit_pricing';
|
|
9239
11546
|
|
|
9240
11547
|
name: string;
|
|
9241
11548
|
|
|
9242
11549
|
plan_phase_order: number | null;
|
|
9243
11550
|
|
|
9244
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
11551
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
9245
11552
|
|
|
9246
11553
|
/**
|
|
9247
11554
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -9249,12 +11556,69 @@ export namespace Price {
|
|
|
9249
11556
|
*/
|
|
9250
11557
|
replaces_price_id: string | null;
|
|
9251
11558
|
|
|
9252
|
-
|
|
11559
|
+
/**
|
|
11560
|
+
* Configuration for scalable_matrix_with_unit_pricing pricing
|
|
11561
|
+
*/
|
|
11562
|
+
scalable_matrix_with_unit_pricing_config: ScalableMatrixWithUnitPricingPrice.ScalableMatrixWithUnitPricingConfig;
|
|
9253
11563
|
|
|
9254
11564
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
9255
11565
|
}
|
|
9256
11566
|
|
|
9257
|
-
export
|
|
11567
|
+
export namespace ScalableMatrixWithUnitPricingPrice {
|
|
11568
|
+
/**
|
|
11569
|
+
* Configuration for scalable_matrix_with_unit_pricing pricing
|
|
11570
|
+
*/
|
|
11571
|
+
export interface ScalableMatrixWithUnitPricingConfig {
|
|
11572
|
+
/**
|
|
11573
|
+
* Used to determine the unit rate
|
|
11574
|
+
*/
|
|
11575
|
+
first_dimension: string;
|
|
11576
|
+
|
|
11577
|
+
/**
|
|
11578
|
+
* Apply a scaling factor to each dimension
|
|
11579
|
+
*/
|
|
11580
|
+
matrix_scaling_factors: Array<ScalableMatrixWithUnitPricingConfig.MatrixScalingFactor>;
|
|
11581
|
+
|
|
11582
|
+
/**
|
|
11583
|
+
* The final unit price to rate against the output of the matrix
|
|
11584
|
+
*/
|
|
11585
|
+
unit_price: string;
|
|
11586
|
+
|
|
11587
|
+
/**
|
|
11588
|
+
* If true, the unit price will be prorated to the billing period
|
|
11589
|
+
*/
|
|
11590
|
+
prorate?: boolean | null;
|
|
11591
|
+
|
|
11592
|
+
/**
|
|
11593
|
+
* Used to determine the unit rate (optional)
|
|
11594
|
+
*/
|
|
11595
|
+
second_dimension?: string | null;
|
|
11596
|
+
}
|
|
11597
|
+
|
|
11598
|
+
export namespace ScalableMatrixWithUnitPricingConfig {
|
|
11599
|
+
/**
|
|
11600
|
+
* Configuration for a single matrix scaling factor
|
|
11601
|
+
*/
|
|
11602
|
+
export interface MatrixScalingFactor {
|
|
11603
|
+
/**
|
|
11604
|
+
* First dimension value
|
|
11605
|
+
*/
|
|
11606
|
+
first_dimension_value: string;
|
|
11607
|
+
|
|
11608
|
+
/**
|
|
11609
|
+
* Scaling factor
|
|
11610
|
+
*/
|
|
11611
|
+
scaling_factor: string;
|
|
11612
|
+
|
|
11613
|
+
/**
|
|
11614
|
+
* Second dimension value (optional)
|
|
11615
|
+
*/
|
|
11616
|
+
second_dimension_value?: string | null;
|
|
11617
|
+
}
|
|
11618
|
+
}
|
|
11619
|
+
}
|
|
11620
|
+
|
|
11621
|
+
export interface ScalableMatrixWithTieredPricingPrice {
|
|
9258
11622
|
id: string;
|
|
9259
11623
|
|
|
9260
11624
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -9273,8 +11637,6 @@ export namespace Price {
|
|
|
9273
11637
|
|
|
9274
11638
|
credit_allocation: Shared.Allocation | null;
|
|
9275
11639
|
|
|
9276
|
-
cumulative_grouped_bulk_config: { [key: string]: unknown };
|
|
9277
|
-
|
|
9278
11640
|
currency: string;
|
|
9279
11641
|
|
|
9280
11642
|
/**
|
|
@@ -9318,13 +11680,16 @@ export namespace Price {
|
|
|
9318
11680
|
*/
|
|
9319
11681
|
minimum_amount: string | null;
|
|
9320
11682
|
|
|
9321
|
-
|
|
11683
|
+
/**
|
|
11684
|
+
* The pricing model type
|
|
11685
|
+
*/
|
|
11686
|
+
model_type: 'scalable_matrix_with_tiered_pricing';
|
|
9322
11687
|
|
|
9323
11688
|
name: string;
|
|
9324
11689
|
|
|
9325
11690
|
plan_phase_order: number | null;
|
|
9326
11691
|
|
|
9327
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
11692
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
9328
11693
|
|
|
9329
11694
|
/**
|
|
9330
11695
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -9332,10 +11697,79 @@ export namespace Price {
|
|
|
9332
11697
|
*/
|
|
9333
11698
|
replaces_price_id: string | null;
|
|
9334
11699
|
|
|
11700
|
+
/**
|
|
11701
|
+
* Configuration for scalable_matrix_with_tiered_pricing pricing
|
|
11702
|
+
*/
|
|
11703
|
+
scalable_matrix_with_tiered_pricing_config: ScalableMatrixWithTieredPricingPrice.ScalableMatrixWithTieredPricingConfig;
|
|
11704
|
+
|
|
9335
11705
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
9336
11706
|
}
|
|
9337
11707
|
|
|
9338
|
-
export
|
|
11708
|
+
export namespace ScalableMatrixWithTieredPricingPrice {
|
|
11709
|
+
/**
|
|
11710
|
+
* Configuration for scalable_matrix_with_tiered_pricing pricing
|
|
11711
|
+
*/
|
|
11712
|
+
export interface ScalableMatrixWithTieredPricingConfig {
|
|
11713
|
+
/**
|
|
11714
|
+
* Used for the scalable matrix first dimension
|
|
11715
|
+
*/
|
|
11716
|
+
first_dimension: string;
|
|
11717
|
+
|
|
11718
|
+
/**
|
|
11719
|
+
* Apply a scaling factor to each dimension
|
|
11720
|
+
*/
|
|
11721
|
+
matrix_scaling_factors: Array<ScalableMatrixWithTieredPricingConfig.MatrixScalingFactor>;
|
|
11722
|
+
|
|
11723
|
+
/**
|
|
11724
|
+
* Tier pricing structure
|
|
11725
|
+
*/
|
|
11726
|
+
tiers: Array<ScalableMatrixWithTieredPricingConfig.Tier>;
|
|
11727
|
+
|
|
11728
|
+
/**
|
|
11729
|
+
* Used for the scalable matrix second dimension (optional)
|
|
11730
|
+
*/
|
|
11731
|
+
second_dimension?: string | null;
|
|
11732
|
+
}
|
|
11733
|
+
|
|
11734
|
+
export namespace ScalableMatrixWithTieredPricingConfig {
|
|
11735
|
+
/**
|
|
11736
|
+
* Configuration for a single matrix scaling factor
|
|
11737
|
+
*/
|
|
11738
|
+
export interface MatrixScalingFactor {
|
|
11739
|
+
/**
|
|
11740
|
+
* First dimension value
|
|
11741
|
+
*/
|
|
11742
|
+
first_dimension_value: string;
|
|
11743
|
+
|
|
11744
|
+
/**
|
|
11745
|
+
* Scaling factor
|
|
11746
|
+
*/
|
|
11747
|
+
scaling_factor: string;
|
|
11748
|
+
|
|
11749
|
+
/**
|
|
11750
|
+
* Second dimension value (optional)
|
|
11751
|
+
*/
|
|
11752
|
+
second_dimension_value?: string | null;
|
|
11753
|
+
}
|
|
11754
|
+
|
|
11755
|
+
/**
|
|
11756
|
+
* Configuration for a single tier entry with business logic
|
|
11757
|
+
*/
|
|
11758
|
+
export interface Tier {
|
|
11759
|
+
/**
|
|
11760
|
+
* Tier lower bound
|
|
11761
|
+
*/
|
|
11762
|
+
tier_lower_bound: string;
|
|
11763
|
+
|
|
11764
|
+
/**
|
|
11765
|
+
* Per unit amount
|
|
11766
|
+
*/
|
|
11767
|
+
unit_amount: string;
|
|
11768
|
+
}
|
|
11769
|
+
}
|
|
11770
|
+
}
|
|
11771
|
+
|
|
11772
|
+
export interface CumulativeGroupedBulkPrice {
|
|
9339
11773
|
id: string;
|
|
9340
11774
|
|
|
9341
11775
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -9354,6 +11788,11 @@ export namespace Price {
|
|
|
9354
11788
|
|
|
9355
11789
|
credit_allocation: Shared.Allocation | null;
|
|
9356
11790
|
|
|
11791
|
+
/**
|
|
11792
|
+
* Configuration for cumulative_grouped_bulk pricing
|
|
11793
|
+
*/
|
|
11794
|
+
cumulative_grouped_bulk_config: CumulativeGroupedBulkPrice.CumulativeGroupedBulkConfig;
|
|
11795
|
+
|
|
9357
11796
|
currency: string;
|
|
9358
11797
|
|
|
9359
11798
|
/**
|
|
@@ -9365,8 +11804,6 @@ export namespace Price {
|
|
|
9365
11804
|
|
|
9366
11805
|
fixed_price_quantity: number | null;
|
|
9367
11806
|
|
|
9368
|
-
grouped_with_min_max_thresholds_config: { [key: string]: unknown };
|
|
9369
|
-
|
|
9370
11807
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
9371
11808
|
|
|
9372
11809
|
item: Shared.ItemSlim;
|
|
@@ -9399,13 +11836,16 @@ export namespace Price {
|
|
|
9399
11836
|
*/
|
|
9400
11837
|
minimum_amount: string | null;
|
|
9401
11838
|
|
|
9402
|
-
|
|
11839
|
+
/**
|
|
11840
|
+
* The pricing model type
|
|
11841
|
+
*/
|
|
11842
|
+
model_type: 'cumulative_grouped_bulk';
|
|
9403
11843
|
|
|
9404
11844
|
name: string;
|
|
9405
11845
|
|
|
9406
11846
|
plan_phase_order: number | null;
|
|
9407
11847
|
|
|
9408
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
11848
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
9409
11849
|
|
|
9410
11850
|
/**
|
|
9411
11851
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -9416,6 +11856,45 @@ export namespace Price {
|
|
|
9416
11856
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
9417
11857
|
}
|
|
9418
11858
|
|
|
11859
|
+
export namespace CumulativeGroupedBulkPrice {
|
|
11860
|
+
/**
|
|
11861
|
+
* Configuration for cumulative_grouped_bulk pricing
|
|
11862
|
+
*/
|
|
11863
|
+
export interface CumulativeGroupedBulkConfig {
|
|
11864
|
+
/**
|
|
11865
|
+
* Each tier lower bound must have the same group of values.
|
|
11866
|
+
*/
|
|
11867
|
+
dimension_values: Array<CumulativeGroupedBulkConfig.DimensionValue>;
|
|
11868
|
+
|
|
11869
|
+
/**
|
|
11870
|
+
* Grouping key name
|
|
11871
|
+
*/
|
|
11872
|
+
group: string;
|
|
11873
|
+
}
|
|
11874
|
+
|
|
11875
|
+
export namespace CumulativeGroupedBulkConfig {
|
|
11876
|
+
/**
|
|
11877
|
+
* Configuration for a dimension value entry
|
|
11878
|
+
*/
|
|
11879
|
+
export interface DimensionValue {
|
|
11880
|
+
/**
|
|
11881
|
+
* Grouping key value
|
|
11882
|
+
*/
|
|
11883
|
+
grouping_key: string;
|
|
11884
|
+
|
|
11885
|
+
/**
|
|
11886
|
+
* Tier lower bound
|
|
11887
|
+
*/
|
|
11888
|
+
tier_lower_bound: string;
|
|
11889
|
+
|
|
11890
|
+
/**
|
|
11891
|
+
* Unit amount for this combination
|
|
11892
|
+
*/
|
|
11893
|
+
unit_amount: string;
|
|
11894
|
+
}
|
|
11895
|
+
}
|
|
11896
|
+
}
|
|
11897
|
+
|
|
9419
11898
|
export interface MinimumCompositePrice {
|
|
9420
11899
|
id: string;
|
|
9421
11900
|
|
|
@@ -9478,15 +11957,21 @@ export namespace Price {
|
|
|
9478
11957
|
*/
|
|
9479
11958
|
minimum_amount: string | null;
|
|
9480
11959
|
|
|
11960
|
+
/**
|
|
11961
|
+
* Configuration for minimum pricing
|
|
11962
|
+
*/
|
|
9481
11963
|
minimum_config: MinimumCompositePrice.MinimumConfig;
|
|
9482
11964
|
|
|
11965
|
+
/**
|
|
11966
|
+
* The pricing model type
|
|
11967
|
+
*/
|
|
9483
11968
|
model_type: 'minimum';
|
|
9484
11969
|
|
|
9485
11970
|
name: string;
|
|
9486
11971
|
|
|
9487
11972
|
plan_phase_order: number | null;
|
|
9488
11973
|
|
|
9489
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
11974
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
9490
11975
|
|
|
9491
11976
|
/**
|
|
9492
11977
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -9498,6 +11983,9 @@ export namespace Price {
|
|
|
9498
11983
|
}
|
|
9499
11984
|
|
|
9500
11985
|
export namespace MinimumCompositePrice {
|
|
11986
|
+
/**
|
|
11987
|
+
* Configuration for minimum pricing
|
|
11988
|
+
*/
|
|
9501
11989
|
export interface MinimumConfig {
|
|
9502
11990
|
/**
|
|
9503
11991
|
* The minimum amount to apply
|
|
@@ -9505,10 +11993,9 @@ export namespace Price {
|
|
|
9505
11993
|
minimum_amount: string;
|
|
9506
11994
|
|
|
9507
11995
|
/**
|
|
9508
|
-
*
|
|
9509
|
-
* service period. Set to false to disable proration.
|
|
11996
|
+
* If true, subtotals from this price are prorated based on the service period
|
|
9510
11997
|
*/
|
|
9511
|
-
prorated?: boolean
|
|
11998
|
+
prorated?: boolean;
|
|
9512
11999
|
}
|
|
9513
12000
|
}
|
|
9514
12001
|
}
|
|
@@ -9629,6 +12116,9 @@ export interface TaxAmount {
|
|
|
9629
12116
|
tax_rate_percentage: string | null;
|
|
9630
12117
|
}
|
|
9631
12118
|
|
|
12119
|
+
/**
|
|
12120
|
+
* Configuration for a single tier
|
|
12121
|
+
*/
|
|
9632
12122
|
export interface Tier {
|
|
9633
12123
|
/**
|
|
9634
12124
|
* Exclusive tier starting value
|
|
@@ -9641,19 +12131,12 @@ export interface Tier {
|
|
|
9641
12131
|
unit_amount: string;
|
|
9642
12132
|
|
|
9643
12133
|
/**
|
|
9644
|
-
* Inclusive tier ending value.
|
|
12134
|
+
* Inclusive tier ending value. This value is null if and only if this is the last
|
|
12135
|
+
* tier.
|
|
9645
12136
|
*/
|
|
9646
12137
|
last_unit?: number | null;
|
|
9647
12138
|
}
|
|
9648
12139
|
|
|
9649
|
-
export interface TierConfig {
|
|
9650
|
-
first_unit: number;
|
|
9651
|
-
|
|
9652
|
-
last_unit: number | null;
|
|
9653
|
-
|
|
9654
|
-
unit_amount: string;
|
|
9655
|
-
}
|
|
9656
|
-
|
|
9657
12140
|
export interface TierSubLineItem {
|
|
9658
12141
|
/**
|
|
9659
12142
|
* The total amount for this sub line item.
|
|
@@ -9666,11 +12149,24 @@ export interface TierSubLineItem {
|
|
|
9666
12149
|
|
|
9667
12150
|
quantity: number;
|
|
9668
12151
|
|
|
9669
|
-
tier_config: TierConfig;
|
|
12152
|
+
tier_config: TierSubLineItem.TierConfig;
|
|
9670
12153
|
|
|
9671
12154
|
type: 'tier';
|
|
9672
12155
|
}
|
|
9673
12156
|
|
|
12157
|
+
export namespace TierSubLineItem {
|
|
12158
|
+
export interface TierConfig {
|
|
12159
|
+
first_unit: number;
|
|
12160
|
+
|
|
12161
|
+
last_unit: number | null;
|
|
12162
|
+
|
|
12163
|
+
unit_amount: string;
|
|
12164
|
+
}
|
|
12165
|
+
}
|
|
12166
|
+
|
|
12167
|
+
/**
|
|
12168
|
+
* Configuration for tiered pricing
|
|
12169
|
+
*/
|
|
9674
12170
|
export interface TieredConfig {
|
|
9675
12171
|
/**
|
|
9676
12172
|
* Tiers for rating based on total usage quantities into the specified tier
|
|
@@ -9728,11 +12224,19 @@ export interface TrialDiscount {
|
|
|
9728
12224
|
trial_percentage_discount?: number | null;
|
|
9729
12225
|
}
|
|
9730
12226
|
|
|
12227
|
+
/**
|
|
12228
|
+
* Configuration for unit pricing
|
|
12229
|
+
*/
|
|
9731
12230
|
export interface UnitConfig {
|
|
9732
12231
|
/**
|
|
9733
12232
|
* Rate per unit of usage
|
|
9734
12233
|
*/
|
|
9735
12234
|
unit_amount: string;
|
|
12235
|
+
|
|
12236
|
+
/**
|
|
12237
|
+
* Multiplier to scale rated quantity by
|
|
12238
|
+
*/
|
|
12239
|
+
scaling_factor?: number | null;
|
|
9736
12240
|
}
|
|
9737
12241
|
|
|
9738
12242
|
export interface UnitConversionRateConfig {
|