orb-billing 5.6.0 → 5.7.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 +19 -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 +924 -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 +2468 -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 +1367 -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 +1058 -113
- package/src/resources/shared.ts +2786 -288
- package/src/resources/subscriptions.ts +1607 -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,41 @@ 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.
|
|
4330
|
+
*/
|
|
4331
|
+
tiers: Array<TieredPackageConfig.Tier>;
|
|
4332
|
+
}
|
|
4333
|
+
|
|
4334
|
+
export namespace TieredPackageConfig {
|
|
4335
|
+
/**
|
|
4336
|
+
* Configuration for a single tier with business logic
|
|
4337
|
+
*/
|
|
4338
|
+
export interface Tier {
|
|
4339
|
+
/**
|
|
4340
|
+
* Price per package
|
|
4341
|
+
*/
|
|
4342
|
+
per_unit: string;
|
|
4343
|
+
|
|
4344
|
+
/**
|
|
4345
|
+
* Tier lower bound
|
|
4346
|
+
*/
|
|
4347
|
+
tier_lower_bound: string;
|
|
4348
|
+
}
|
|
4349
|
+
}
|
|
4350
|
+
}
|
|
4351
|
+
|
|
3658
4352
|
export interface NewFloatingTieredPackageWithMinimumPrice {
|
|
3659
4353
|
/**
|
|
3660
4354
|
* The cadence to bill for this price on.
|
|
@@ -3671,6 +4365,9 @@ export interface NewFloatingTieredPackageWithMinimumPrice {
|
|
|
3671
4365
|
*/
|
|
3672
4366
|
item_id: string;
|
|
3673
4367
|
|
|
4368
|
+
/**
|
|
4369
|
+
* The pricing model type
|
|
4370
|
+
*/
|
|
3674
4371
|
model_type: 'tiered_package_with_minimum';
|
|
3675
4372
|
|
|
3676
4373
|
/**
|
|
@@ -3678,7 +4375,10 @@ export interface NewFloatingTieredPackageWithMinimumPrice {
|
|
|
3678
4375
|
*/
|
|
3679
4376
|
name: string;
|
|
3680
4377
|
|
|
3681
|
-
|
|
4378
|
+
/**
|
|
4379
|
+
* Configuration for tiered_package_with_minimum pricing
|
|
4380
|
+
*/
|
|
4381
|
+
tiered_package_with_minimum_config: NewFloatingTieredPackageWithMinimumPrice.TieredPackageWithMinimumConfig;
|
|
3682
4382
|
|
|
3683
4383
|
/**
|
|
3684
4384
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -3743,6 +4443,46 @@ export interface NewFloatingTieredPackageWithMinimumPrice {
|
|
|
3743
4443
|
metadata?: { [key: string]: string | null } | null;
|
|
3744
4444
|
}
|
|
3745
4445
|
|
|
4446
|
+
export namespace NewFloatingTieredPackageWithMinimumPrice {
|
|
4447
|
+
/**
|
|
4448
|
+
* Configuration for tiered_package_with_minimum pricing
|
|
4449
|
+
*/
|
|
4450
|
+
export interface TieredPackageWithMinimumConfig {
|
|
4451
|
+
/**
|
|
4452
|
+
* Package size
|
|
4453
|
+
*/
|
|
4454
|
+
package_size: number;
|
|
4455
|
+
|
|
4456
|
+
/**
|
|
4457
|
+
* Apply tiered pricing after rounding up the quantity to the package size. Tiers
|
|
4458
|
+
* are defined using exclusive lower bounds.
|
|
4459
|
+
*/
|
|
4460
|
+
tiers: Array<TieredPackageWithMinimumConfig.Tier>;
|
|
4461
|
+
}
|
|
4462
|
+
|
|
4463
|
+
export namespace TieredPackageWithMinimumConfig {
|
|
4464
|
+
/**
|
|
4465
|
+
* Configuration for a single tier
|
|
4466
|
+
*/
|
|
4467
|
+
export interface Tier {
|
|
4468
|
+
/**
|
|
4469
|
+
* Minimum amount
|
|
4470
|
+
*/
|
|
4471
|
+
minimum_amount: string;
|
|
4472
|
+
|
|
4473
|
+
/**
|
|
4474
|
+
* Price per package
|
|
4475
|
+
*/
|
|
4476
|
+
per_unit: string;
|
|
4477
|
+
|
|
4478
|
+
/**
|
|
4479
|
+
* Tier lower bound
|
|
4480
|
+
*/
|
|
4481
|
+
tier_lower_bound: string;
|
|
4482
|
+
}
|
|
4483
|
+
}
|
|
4484
|
+
}
|
|
4485
|
+
|
|
3746
4486
|
export interface NewFloatingTieredPrice {
|
|
3747
4487
|
/**
|
|
3748
4488
|
* The cadence to bill for this price on.
|
|
@@ -3759,6 +4499,9 @@ export interface NewFloatingTieredPrice {
|
|
|
3759
4499
|
*/
|
|
3760
4500
|
item_id: string;
|
|
3761
4501
|
|
|
4502
|
+
/**
|
|
4503
|
+
* The pricing model type
|
|
4504
|
+
*/
|
|
3762
4505
|
model_type: 'tiered';
|
|
3763
4506
|
|
|
3764
4507
|
/**
|
|
@@ -3766,6 +4509,9 @@ export interface NewFloatingTieredPrice {
|
|
|
3766
4509
|
*/
|
|
3767
4510
|
name: string;
|
|
3768
4511
|
|
|
4512
|
+
/**
|
|
4513
|
+
* Configuration for tiered pricing
|
|
4514
|
+
*/
|
|
3769
4515
|
tiered_config: TieredConfig;
|
|
3770
4516
|
|
|
3771
4517
|
/**
|
|
@@ -3847,6 +4593,9 @@ export interface NewFloatingTieredWithMinimumPrice {
|
|
|
3847
4593
|
*/
|
|
3848
4594
|
item_id: string;
|
|
3849
4595
|
|
|
4596
|
+
/**
|
|
4597
|
+
* The pricing model type
|
|
4598
|
+
*/
|
|
3850
4599
|
model_type: 'tiered_with_minimum';
|
|
3851
4600
|
|
|
3852
4601
|
/**
|
|
@@ -3854,7 +4603,10 @@ export interface NewFloatingTieredWithMinimumPrice {
|
|
|
3854
4603
|
*/
|
|
3855
4604
|
name: string;
|
|
3856
4605
|
|
|
3857
|
-
|
|
4606
|
+
/**
|
|
4607
|
+
* Configuration for tiered_with_minimum pricing
|
|
4608
|
+
*/
|
|
4609
|
+
tiered_with_minimum_config: NewFloatingTieredWithMinimumPrice.TieredWithMinimumConfig;
|
|
3858
4610
|
|
|
3859
4611
|
/**
|
|
3860
4612
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -3919,6 +4671,51 @@ export interface NewFloatingTieredWithMinimumPrice {
|
|
|
3919
4671
|
metadata?: { [key: string]: string | null } | null;
|
|
3920
4672
|
}
|
|
3921
4673
|
|
|
4674
|
+
export namespace NewFloatingTieredWithMinimumPrice {
|
|
4675
|
+
/**
|
|
4676
|
+
* Configuration for tiered_with_minimum pricing
|
|
4677
|
+
*/
|
|
4678
|
+
export interface TieredWithMinimumConfig {
|
|
4679
|
+
/**
|
|
4680
|
+
* Tiered pricing with a minimum amount dependent on the volume tier. Tiers are
|
|
4681
|
+
* defined using exclusive lower bounds.
|
|
4682
|
+
*/
|
|
4683
|
+
tiers: Array<TieredWithMinimumConfig.Tier>;
|
|
4684
|
+
|
|
4685
|
+
/**
|
|
4686
|
+
* If true, tiers with an accrued amount of 0 will not be included in the rating.
|
|
4687
|
+
*/
|
|
4688
|
+
hide_zero_amount_tiers?: boolean;
|
|
4689
|
+
|
|
4690
|
+
/**
|
|
4691
|
+
* If true, the unit price will be prorated to the billing period
|
|
4692
|
+
*/
|
|
4693
|
+
prorate?: boolean;
|
|
4694
|
+
}
|
|
4695
|
+
|
|
4696
|
+
export namespace TieredWithMinimumConfig {
|
|
4697
|
+
/**
|
|
4698
|
+
* Configuration for a single tier
|
|
4699
|
+
*/
|
|
4700
|
+
export interface Tier {
|
|
4701
|
+
/**
|
|
4702
|
+
* Minimum amount
|
|
4703
|
+
*/
|
|
4704
|
+
minimum_amount: string;
|
|
4705
|
+
|
|
4706
|
+
/**
|
|
4707
|
+
* Tier lower bound
|
|
4708
|
+
*/
|
|
4709
|
+
tier_lower_bound: string;
|
|
4710
|
+
|
|
4711
|
+
/**
|
|
4712
|
+
* Per unit amount
|
|
4713
|
+
*/
|
|
4714
|
+
unit_amount: string;
|
|
4715
|
+
}
|
|
4716
|
+
}
|
|
4717
|
+
}
|
|
4718
|
+
|
|
3922
4719
|
export interface NewFloatingTieredWithProrationPrice {
|
|
3923
4720
|
/**
|
|
3924
4721
|
* The cadence to bill for this price on.
|
|
@@ -3935,6 +4732,9 @@ export interface NewFloatingTieredWithProrationPrice {
|
|
|
3935
4732
|
*/
|
|
3936
4733
|
item_id: string;
|
|
3937
4734
|
|
|
4735
|
+
/**
|
|
4736
|
+
* The pricing model type
|
|
4737
|
+
*/
|
|
3938
4738
|
model_type: 'tiered_with_proration';
|
|
3939
4739
|
|
|
3940
4740
|
/**
|
|
@@ -3942,7 +4742,10 @@ export interface NewFloatingTieredWithProrationPrice {
|
|
|
3942
4742
|
*/
|
|
3943
4743
|
name: string;
|
|
3944
4744
|
|
|
3945
|
-
|
|
4745
|
+
/**
|
|
4746
|
+
* Configuration for tiered_with_proration pricing
|
|
4747
|
+
*/
|
|
4748
|
+
tiered_with_proration_config: NewFloatingTieredWithProrationPrice.TieredWithProrationConfig;
|
|
3946
4749
|
|
|
3947
4750
|
/**
|
|
3948
4751
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -4007,13 +4810,43 @@ export interface NewFloatingTieredWithProrationPrice {
|
|
|
4007
4810
|
metadata?: { [key: string]: string | null } | null;
|
|
4008
4811
|
}
|
|
4009
4812
|
|
|
4010
|
-
export
|
|
4813
|
+
export namespace NewFloatingTieredWithProrationPrice {
|
|
4011
4814
|
/**
|
|
4012
|
-
*
|
|
4815
|
+
* Configuration for tiered_with_proration pricing
|
|
4013
4816
|
*/
|
|
4014
|
-
|
|
4817
|
+
export interface TieredWithProrationConfig {
|
|
4818
|
+
/**
|
|
4819
|
+
* Tiers for rating based on total usage quantities into the specified tier with
|
|
4820
|
+
* proration
|
|
4821
|
+
*/
|
|
4822
|
+
tiers: Array<TieredWithProrationConfig.Tier>;
|
|
4823
|
+
}
|
|
4015
4824
|
|
|
4016
|
-
|
|
4825
|
+
export namespace TieredWithProrationConfig {
|
|
4826
|
+
/**
|
|
4827
|
+
* Configuration for a single tiered with proration tier
|
|
4828
|
+
*/
|
|
4829
|
+
export interface Tier {
|
|
4830
|
+
/**
|
|
4831
|
+
* Inclusive tier starting value
|
|
4832
|
+
*/
|
|
4833
|
+
tier_lower_bound: string;
|
|
4834
|
+
|
|
4835
|
+
/**
|
|
4836
|
+
* Amount per unit
|
|
4837
|
+
*/
|
|
4838
|
+
unit_amount: string;
|
|
4839
|
+
}
|
|
4840
|
+
}
|
|
4841
|
+
}
|
|
4842
|
+
|
|
4843
|
+
export interface NewFloatingUnitPrice {
|
|
4844
|
+
/**
|
|
4845
|
+
* The cadence to bill for this price on.
|
|
4846
|
+
*/
|
|
4847
|
+
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
4848
|
+
|
|
4849
|
+
/**
|
|
4017
4850
|
* An ISO 4217 currency string for which this price is billed in.
|
|
4018
4851
|
*/
|
|
4019
4852
|
currency: string;
|
|
@@ -4023,6 +4856,9 @@ export interface NewFloatingUnitPrice {
|
|
|
4023
4856
|
*/
|
|
4024
4857
|
item_id: string;
|
|
4025
4858
|
|
|
4859
|
+
/**
|
|
4860
|
+
* The pricing model type
|
|
4861
|
+
*/
|
|
4026
4862
|
model_type: 'unit';
|
|
4027
4863
|
|
|
4028
4864
|
/**
|
|
@@ -4030,6 +4866,9 @@ export interface NewFloatingUnitPrice {
|
|
|
4030
4866
|
*/
|
|
4031
4867
|
name: string;
|
|
4032
4868
|
|
|
4869
|
+
/**
|
|
4870
|
+
* Configuration for unit pricing
|
|
4871
|
+
*/
|
|
4033
4872
|
unit_config: UnitConfig;
|
|
4034
4873
|
|
|
4035
4874
|
/**
|
|
@@ -4111,6 +4950,9 @@ export interface NewFloatingUnitWithPercentPrice {
|
|
|
4111
4950
|
*/
|
|
4112
4951
|
item_id: string;
|
|
4113
4952
|
|
|
4953
|
+
/**
|
|
4954
|
+
* The pricing model type
|
|
4955
|
+
*/
|
|
4114
4956
|
model_type: 'unit_with_percent';
|
|
4115
4957
|
|
|
4116
4958
|
/**
|
|
@@ -4118,7 +4960,10 @@ export interface NewFloatingUnitWithPercentPrice {
|
|
|
4118
4960
|
*/
|
|
4119
4961
|
name: string;
|
|
4120
4962
|
|
|
4121
|
-
|
|
4963
|
+
/**
|
|
4964
|
+
* Configuration for unit_with_percent pricing
|
|
4965
|
+
*/
|
|
4966
|
+
unit_with_percent_config: NewFloatingUnitWithPercentPrice.UnitWithPercentConfig;
|
|
4122
4967
|
|
|
4123
4968
|
/**
|
|
4124
4969
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -4183,6 +5028,23 @@ export interface NewFloatingUnitWithPercentPrice {
|
|
|
4183
5028
|
metadata?: { [key: string]: string | null } | null;
|
|
4184
5029
|
}
|
|
4185
5030
|
|
|
5031
|
+
export namespace NewFloatingUnitWithPercentPrice {
|
|
5032
|
+
/**
|
|
5033
|
+
* Configuration for unit_with_percent pricing
|
|
5034
|
+
*/
|
|
5035
|
+
export interface UnitWithPercentConfig {
|
|
5036
|
+
/**
|
|
5037
|
+
* What percent, out of 100, of the calculated total to charge
|
|
5038
|
+
*/
|
|
5039
|
+
percent: string;
|
|
5040
|
+
|
|
5041
|
+
/**
|
|
5042
|
+
* Rate per unit of usage
|
|
5043
|
+
*/
|
|
5044
|
+
unit_amount: string;
|
|
5045
|
+
}
|
|
5046
|
+
}
|
|
5047
|
+
|
|
4186
5048
|
export interface NewFloatingUnitWithProrationPrice {
|
|
4187
5049
|
/**
|
|
4188
5050
|
* The cadence to bill for this price on.
|
|
@@ -4199,6 +5061,9 @@ export interface NewFloatingUnitWithProrationPrice {
|
|
|
4199
5061
|
*/
|
|
4200
5062
|
item_id: string;
|
|
4201
5063
|
|
|
5064
|
+
/**
|
|
5065
|
+
* The pricing model type
|
|
5066
|
+
*/
|
|
4202
5067
|
model_type: 'unit_with_proration';
|
|
4203
5068
|
|
|
4204
5069
|
/**
|
|
@@ -4206,7 +5071,10 @@ export interface NewFloatingUnitWithProrationPrice {
|
|
|
4206
5071
|
*/
|
|
4207
5072
|
name: string;
|
|
4208
5073
|
|
|
4209
|
-
|
|
5074
|
+
/**
|
|
5075
|
+
* Configuration for unit_with_proration pricing
|
|
5076
|
+
*/
|
|
5077
|
+
unit_with_proration_config: NewFloatingUnitWithProrationPrice.UnitWithProrationConfig;
|
|
4210
5078
|
|
|
4211
5079
|
/**
|
|
4212
5080
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -4271,6 +5139,18 @@ export interface NewFloatingUnitWithProrationPrice {
|
|
|
4271
5139
|
metadata?: { [key: string]: string | null } | null;
|
|
4272
5140
|
}
|
|
4273
5141
|
|
|
5142
|
+
export namespace NewFloatingUnitWithProrationPrice {
|
|
5143
|
+
/**
|
|
5144
|
+
* Configuration for unit_with_proration pricing
|
|
5145
|
+
*/
|
|
5146
|
+
export interface UnitWithProrationConfig {
|
|
5147
|
+
/**
|
|
5148
|
+
* Rate per unit of usage
|
|
5149
|
+
*/
|
|
5150
|
+
unit_amount: string;
|
|
5151
|
+
}
|
|
5152
|
+
}
|
|
5153
|
+
|
|
4274
5154
|
export interface NewMaximum {
|
|
4275
5155
|
adjustment_type: 'maximum';
|
|
4276
5156
|
|
|
@@ -4403,6 +5283,9 @@ export interface NewPercentageDiscount {
|
|
|
4403
5283
|
}
|
|
4404
5284
|
|
|
4405
5285
|
export interface NewPlanBulkPrice {
|
|
5286
|
+
/**
|
|
5287
|
+
* Configuration for bulk pricing
|
|
5288
|
+
*/
|
|
4406
5289
|
bulk_config: BulkConfig;
|
|
4407
5290
|
|
|
4408
5291
|
/**
|
|
@@ -4415,6 +5298,9 @@ export interface NewPlanBulkPrice {
|
|
|
4415
5298
|
*/
|
|
4416
5299
|
item_id: string;
|
|
4417
5300
|
|
|
5301
|
+
/**
|
|
5302
|
+
* The pricing model type
|
|
5303
|
+
*/
|
|
4418
5304
|
model_type: 'bulk';
|
|
4419
5305
|
|
|
4420
5306
|
/**
|
|
@@ -4498,7 +5384,10 @@ export interface NewPlanBulkPrice {
|
|
|
4498
5384
|
}
|
|
4499
5385
|
|
|
4500
5386
|
export interface NewPlanBulkWithProrationPrice {
|
|
4501
|
-
|
|
5387
|
+
/**
|
|
5388
|
+
* Configuration for bulk_with_proration pricing
|
|
5389
|
+
*/
|
|
5390
|
+
bulk_with_proration_config: NewPlanBulkWithProrationPrice.BulkWithProrationConfig;
|
|
4502
5391
|
|
|
4503
5392
|
/**
|
|
4504
5393
|
* The cadence to bill for this price on.
|
|
@@ -4510,6 +5399,9 @@ export interface NewPlanBulkWithProrationPrice {
|
|
|
4510
5399
|
*/
|
|
4511
5400
|
item_id: string;
|
|
4512
5401
|
|
|
5402
|
+
/**
|
|
5403
|
+
* The pricing model type
|
|
5404
|
+
*/
|
|
4513
5405
|
model_type: 'bulk_with_proration';
|
|
4514
5406
|
|
|
4515
5407
|
/**
|
|
@@ -4592,19 +5484,54 @@ export interface NewPlanBulkWithProrationPrice {
|
|
|
4592
5484
|
reference_id?: string | null;
|
|
4593
5485
|
}
|
|
4594
5486
|
|
|
5487
|
+
export namespace NewPlanBulkWithProrationPrice {
|
|
5488
|
+
/**
|
|
5489
|
+
* Configuration for bulk_with_proration pricing
|
|
5490
|
+
*/
|
|
5491
|
+
export interface BulkWithProrationConfig {
|
|
5492
|
+
/**
|
|
5493
|
+
* Bulk tiers for rating based on total usage volume
|
|
5494
|
+
*/
|
|
5495
|
+
tiers: Array<BulkWithProrationConfig.Tier>;
|
|
5496
|
+
}
|
|
5497
|
+
|
|
5498
|
+
export namespace BulkWithProrationConfig {
|
|
5499
|
+
/**
|
|
5500
|
+
* Configuration for a single bulk pricing tier with proration
|
|
5501
|
+
*/
|
|
5502
|
+
export interface Tier {
|
|
5503
|
+
/**
|
|
5504
|
+
* Cost per unit
|
|
5505
|
+
*/
|
|
5506
|
+
unit_amount: string;
|
|
5507
|
+
|
|
5508
|
+
/**
|
|
5509
|
+
* The lower bound for this tier
|
|
5510
|
+
*/
|
|
5511
|
+
tier_lower_bound?: string | null;
|
|
5512
|
+
}
|
|
5513
|
+
}
|
|
5514
|
+
}
|
|
5515
|
+
|
|
4595
5516
|
export interface NewPlanCumulativeGroupedBulkPrice {
|
|
4596
5517
|
/**
|
|
4597
5518
|
* The cadence to bill for this price on.
|
|
4598
5519
|
*/
|
|
4599
5520
|
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
4600
5521
|
|
|
4601
|
-
|
|
5522
|
+
/**
|
|
5523
|
+
* Configuration for cumulative_grouped_bulk pricing
|
|
5524
|
+
*/
|
|
5525
|
+
cumulative_grouped_bulk_config: NewPlanCumulativeGroupedBulkPrice.CumulativeGroupedBulkConfig;
|
|
4602
5526
|
|
|
4603
5527
|
/**
|
|
4604
5528
|
* The id of the item the price will be associated with.
|
|
4605
5529
|
*/
|
|
4606
5530
|
item_id: string;
|
|
4607
5531
|
|
|
5532
|
+
/**
|
|
5533
|
+
* The pricing model type
|
|
5534
|
+
*/
|
|
4608
5535
|
model_type: 'cumulative_grouped_bulk';
|
|
4609
5536
|
|
|
4610
5537
|
/**
|
|
@@ -4687,19 +5614,64 @@ export interface NewPlanCumulativeGroupedBulkPrice {
|
|
|
4687
5614
|
reference_id?: string | null;
|
|
4688
5615
|
}
|
|
4689
5616
|
|
|
5617
|
+
export namespace NewPlanCumulativeGroupedBulkPrice {
|
|
5618
|
+
/**
|
|
5619
|
+
* Configuration for cumulative_grouped_bulk pricing
|
|
5620
|
+
*/
|
|
5621
|
+
export interface CumulativeGroupedBulkConfig {
|
|
5622
|
+
/**
|
|
5623
|
+
* Each tier lower bound must have the same group of values.
|
|
5624
|
+
*/
|
|
5625
|
+
dimension_values: Array<CumulativeGroupedBulkConfig.DimensionValue>;
|
|
5626
|
+
|
|
5627
|
+
/**
|
|
5628
|
+
* Grouping key name
|
|
5629
|
+
*/
|
|
5630
|
+
group: string;
|
|
5631
|
+
}
|
|
5632
|
+
|
|
5633
|
+
export namespace CumulativeGroupedBulkConfig {
|
|
5634
|
+
/**
|
|
5635
|
+
* Configuration for a dimension value entry
|
|
5636
|
+
*/
|
|
5637
|
+
export interface DimensionValue {
|
|
5638
|
+
/**
|
|
5639
|
+
* Grouping key value
|
|
5640
|
+
*/
|
|
5641
|
+
grouping_key: string;
|
|
5642
|
+
|
|
5643
|
+
/**
|
|
5644
|
+
* Tier lower bound
|
|
5645
|
+
*/
|
|
5646
|
+
tier_lower_bound: string;
|
|
5647
|
+
|
|
5648
|
+
/**
|
|
5649
|
+
* Unit amount for this combination
|
|
5650
|
+
*/
|
|
5651
|
+
unit_amount: string;
|
|
5652
|
+
}
|
|
5653
|
+
}
|
|
5654
|
+
}
|
|
5655
|
+
|
|
4690
5656
|
export interface NewPlanGroupedAllocationPrice {
|
|
4691
5657
|
/**
|
|
4692
5658
|
* The cadence to bill for this price on.
|
|
4693
5659
|
*/
|
|
4694
5660
|
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
4695
5661
|
|
|
4696
|
-
|
|
5662
|
+
/**
|
|
5663
|
+
* Configuration for grouped_allocation pricing
|
|
5664
|
+
*/
|
|
5665
|
+
grouped_allocation_config: NewPlanGroupedAllocationPrice.GroupedAllocationConfig;
|
|
4697
5666
|
|
|
4698
5667
|
/**
|
|
4699
5668
|
* The id of the item the price will be associated with.
|
|
4700
5669
|
*/
|
|
4701
5670
|
item_id: string;
|
|
4702
5671
|
|
|
5672
|
+
/**
|
|
5673
|
+
* The pricing model type
|
|
5674
|
+
*/
|
|
4703
5675
|
model_type: 'grouped_allocation';
|
|
4704
5676
|
|
|
4705
5677
|
/**
|
|
@@ -4782,19 +5754,47 @@ export interface NewPlanGroupedAllocationPrice {
|
|
|
4782
5754
|
reference_id?: string | null;
|
|
4783
5755
|
}
|
|
4784
5756
|
|
|
5757
|
+
export namespace NewPlanGroupedAllocationPrice {
|
|
5758
|
+
/**
|
|
5759
|
+
* Configuration for grouped_allocation pricing
|
|
5760
|
+
*/
|
|
5761
|
+
export interface GroupedAllocationConfig {
|
|
5762
|
+
/**
|
|
5763
|
+
* Usage allocation per group
|
|
5764
|
+
*/
|
|
5765
|
+
allocation: string;
|
|
5766
|
+
|
|
5767
|
+
/**
|
|
5768
|
+
* How to determine the groups that should each be allocated some quantity
|
|
5769
|
+
*/
|
|
5770
|
+
grouping_key: string;
|
|
5771
|
+
|
|
5772
|
+
/**
|
|
5773
|
+
* Unit rate for post-allocation
|
|
5774
|
+
*/
|
|
5775
|
+
overage_unit_rate: string;
|
|
5776
|
+
}
|
|
5777
|
+
}
|
|
5778
|
+
|
|
4785
5779
|
export interface NewPlanGroupedTieredPackagePrice {
|
|
4786
5780
|
/**
|
|
4787
5781
|
* The cadence to bill for this price on.
|
|
4788
5782
|
*/
|
|
4789
5783
|
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
4790
5784
|
|
|
4791
|
-
|
|
5785
|
+
/**
|
|
5786
|
+
* Configuration for grouped_tiered_package pricing
|
|
5787
|
+
*/
|
|
5788
|
+
grouped_tiered_package_config: NewPlanGroupedTieredPackagePrice.GroupedTieredPackageConfig;
|
|
4792
5789
|
|
|
4793
5790
|
/**
|
|
4794
5791
|
* The id of the item the price will be associated with.
|
|
4795
5792
|
*/
|
|
4796
5793
|
item_id: string;
|
|
4797
5794
|
|
|
5795
|
+
/**
|
|
5796
|
+
* The pricing model type
|
|
5797
|
+
*/
|
|
4798
5798
|
model_type: 'grouped_tiered_package';
|
|
4799
5799
|
|
|
4800
5800
|
/**
|
|
@@ -4877,19 +5877,65 @@ export interface NewPlanGroupedTieredPackagePrice {
|
|
|
4877
5877
|
reference_id?: string | null;
|
|
4878
5878
|
}
|
|
4879
5879
|
|
|
5880
|
+
export namespace NewPlanGroupedTieredPackagePrice {
|
|
5881
|
+
/**
|
|
5882
|
+
* Configuration for grouped_tiered_package pricing
|
|
5883
|
+
*/
|
|
5884
|
+
export interface GroupedTieredPackageConfig {
|
|
5885
|
+
/**
|
|
5886
|
+
* The event property used to group before tiering
|
|
5887
|
+
*/
|
|
5888
|
+
grouping_key: string;
|
|
5889
|
+
|
|
5890
|
+
/**
|
|
5891
|
+
* Package size
|
|
5892
|
+
*/
|
|
5893
|
+
package_size: string;
|
|
5894
|
+
|
|
5895
|
+
/**
|
|
5896
|
+
* Apply tiered pricing after rounding up the quantity to the package size. Tiers
|
|
5897
|
+
* are defined using exclusive lower bounds.
|
|
5898
|
+
*/
|
|
5899
|
+
tiers: Array<GroupedTieredPackageConfig.Tier>;
|
|
5900
|
+
}
|
|
5901
|
+
|
|
5902
|
+
export namespace GroupedTieredPackageConfig {
|
|
5903
|
+
/**
|
|
5904
|
+
* Configuration for a single tier
|
|
5905
|
+
*/
|
|
5906
|
+
export interface Tier {
|
|
5907
|
+
/**
|
|
5908
|
+
* Price per package
|
|
5909
|
+
*/
|
|
5910
|
+
per_unit: string;
|
|
5911
|
+
|
|
5912
|
+
/**
|
|
5913
|
+
* Tier lower bound
|
|
5914
|
+
*/
|
|
5915
|
+
tier_lower_bound: string;
|
|
5916
|
+
}
|
|
5917
|
+
}
|
|
5918
|
+
}
|
|
5919
|
+
|
|
4880
5920
|
export interface NewPlanGroupedTieredPrice {
|
|
4881
5921
|
/**
|
|
4882
5922
|
* The cadence to bill for this price on.
|
|
4883
5923
|
*/
|
|
4884
5924
|
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
4885
5925
|
|
|
4886
|
-
|
|
5926
|
+
/**
|
|
5927
|
+
* Configuration for grouped_tiered pricing
|
|
5928
|
+
*/
|
|
5929
|
+
grouped_tiered_config: NewPlanGroupedTieredPrice.GroupedTieredConfig;
|
|
4887
5930
|
|
|
4888
5931
|
/**
|
|
4889
5932
|
* The id of the item the price will be associated with.
|
|
4890
5933
|
*/
|
|
4891
5934
|
item_id: string;
|
|
4892
5935
|
|
|
5936
|
+
/**
|
|
5937
|
+
* The pricing model type
|
|
5938
|
+
*/
|
|
4893
5939
|
model_type: 'grouped_tiered';
|
|
4894
5940
|
|
|
4895
5941
|
/**
|
|
@@ -4972,19 +6018,60 @@ export interface NewPlanGroupedTieredPrice {
|
|
|
4972
6018
|
reference_id?: string | null;
|
|
4973
6019
|
}
|
|
4974
6020
|
|
|
6021
|
+
export namespace NewPlanGroupedTieredPrice {
|
|
6022
|
+
/**
|
|
6023
|
+
* Configuration for grouped_tiered pricing
|
|
6024
|
+
*/
|
|
6025
|
+
export interface GroupedTieredConfig {
|
|
6026
|
+
/**
|
|
6027
|
+
* The billable metric property used to group before tiering
|
|
6028
|
+
*/
|
|
6029
|
+
grouping_key: string;
|
|
6030
|
+
|
|
6031
|
+
/**
|
|
6032
|
+
* Apply tiered pricing to each segment generated after grouping with the provided
|
|
6033
|
+
* key
|
|
6034
|
+
*/
|
|
6035
|
+
tiers: Array<GroupedTieredConfig.Tier>;
|
|
6036
|
+
}
|
|
6037
|
+
|
|
6038
|
+
export namespace GroupedTieredConfig {
|
|
6039
|
+
/**
|
|
6040
|
+
* Configuration for a single tier
|
|
6041
|
+
*/
|
|
6042
|
+
export interface Tier {
|
|
6043
|
+
/**
|
|
6044
|
+
* Tier lower bound
|
|
6045
|
+
*/
|
|
6046
|
+
tier_lower_bound: string;
|
|
6047
|
+
|
|
6048
|
+
/**
|
|
6049
|
+
* Per unit amount
|
|
6050
|
+
*/
|
|
6051
|
+
unit_amount: string;
|
|
6052
|
+
}
|
|
6053
|
+
}
|
|
6054
|
+
}
|
|
6055
|
+
|
|
4975
6056
|
export interface NewPlanGroupedWithMeteredMinimumPrice {
|
|
4976
6057
|
/**
|
|
4977
6058
|
* The cadence to bill for this price on.
|
|
4978
6059
|
*/
|
|
4979
6060
|
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
4980
6061
|
|
|
4981
|
-
|
|
6062
|
+
/**
|
|
6063
|
+
* Configuration for grouped_with_metered_minimum pricing
|
|
6064
|
+
*/
|
|
6065
|
+
grouped_with_metered_minimum_config: NewPlanGroupedWithMeteredMinimumPrice.GroupedWithMeteredMinimumConfig;
|
|
4982
6066
|
|
|
4983
6067
|
/**
|
|
4984
6068
|
* The id of the item the price will be associated with.
|
|
4985
6069
|
*/
|
|
4986
6070
|
item_id: string;
|
|
4987
6071
|
|
|
6072
|
+
/**
|
|
6073
|
+
* The pricing model type
|
|
6074
|
+
*/
|
|
4988
6075
|
model_type: 'grouped_with_metered_minimum';
|
|
4989
6076
|
|
|
4990
6077
|
/**
|
|
@@ -5067,19 +6154,96 @@ export interface NewPlanGroupedWithMeteredMinimumPrice {
|
|
|
5067
6154
|
reference_id?: string | null;
|
|
5068
6155
|
}
|
|
5069
6156
|
|
|
6157
|
+
export namespace NewPlanGroupedWithMeteredMinimumPrice {
|
|
6158
|
+
/**
|
|
6159
|
+
* Configuration for grouped_with_metered_minimum pricing
|
|
6160
|
+
*/
|
|
6161
|
+
export interface GroupedWithMeteredMinimumConfig {
|
|
6162
|
+
/**
|
|
6163
|
+
* Used to partition the usage into groups. The minimum amount is applied to each
|
|
6164
|
+
* group.
|
|
6165
|
+
*/
|
|
6166
|
+
grouping_key: string;
|
|
6167
|
+
|
|
6168
|
+
/**
|
|
6169
|
+
* The minimum amount to charge per group per unit
|
|
6170
|
+
*/
|
|
6171
|
+
minimum_unit_amount: string;
|
|
6172
|
+
|
|
6173
|
+
/**
|
|
6174
|
+
* Used to determine the unit rate
|
|
6175
|
+
*/
|
|
6176
|
+
pricing_key: string;
|
|
6177
|
+
|
|
6178
|
+
/**
|
|
6179
|
+
* Scale the unit rates by the scaling factor.
|
|
6180
|
+
*/
|
|
6181
|
+
scaling_factors: Array<GroupedWithMeteredMinimumConfig.ScalingFactor>;
|
|
6182
|
+
|
|
6183
|
+
/**
|
|
6184
|
+
* Used to determine the unit rate scaling factor
|
|
6185
|
+
*/
|
|
6186
|
+
scaling_key: string;
|
|
6187
|
+
|
|
6188
|
+
/**
|
|
6189
|
+
* Apply per unit pricing to each pricing value. The minimum amount is applied any
|
|
6190
|
+
* unmatched usage.
|
|
6191
|
+
*/
|
|
6192
|
+
unit_amounts: Array<GroupedWithMeteredMinimumConfig.UnitAmount>;
|
|
6193
|
+
}
|
|
6194
|
+
|
|
6195
|
+
export namespace GroupedWithMeteredMinimumConfig {
|
|
6196
|
+
/**
|
|
6197
|
+
* Configuration for a scaling factor
|
|
6198
|
+
*/
|
|
6199
|
+
export interface ScalingFactor {
|
|
6200
|
+
/**
|
|
6201
|
+
* Scaling factor
|
|
6202
|
+
*/
|
|
6203
|
+
scaling_factor: string;
|
|
6204
|
+
|
|
6205
|
+
/**
|
|
6206
|
+
* Scaling value
|
|
6207
|
+
*/
|
|
6208
|
+
scaling_value: string;
|
|
6209
|
+
}
|
|
6210
|
+
|
|
6211
|
+
/**
|
|
6212
|
+
* Configuration for a unit amount
|
|
6213
|
+
*/
|
|
6214
|
+
export interface UnitAmount {
|
|
6215
|
+
/**
|
|
6216
|
+
* Pricing value
|
|
6217
|
+
*/
|
|
6218
|
+
pricing_value: string;
|
|
6219
|
+
|
|
6220
|
+
/**
|
|
6221
|
+
* Per unit amount
|
|
6222
|
+
*/
|
|
6223
|
+
unit_amount: string;
|
|
6224
|
+
}
|
|
6225
|
+
}
|
|
6226
|
+
}
|
|
6227
|
+
|
|
5070
6228
|
export interface NewPlanGroupedWithProratedMinimumPrice {
|
|
5071
6229
|
/**
|
|
5072
6230
|
* The cadence to bill for this price on.
|
|
5073
6231
|
*/
|
|
5074
6232
|
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
5075
6233
|
|
|
5076
|
-
|
|
6234
|
+
/**
|
|
6235
|
+
* Configuration for grouped_with_prorated_minimum pricing
|
|
6236
|
+
*/
|
|
6237
|
+
grouped_with_prorated_minimum_config: NewPlanGroupedWithProratedMinimumPrice.GroupedWithProratedMinimumConfig;
|
|
5077
6238
|
|
|
5078
6239
|
/**
|
|
5079
6240
|
* The id of the item the price will be associated with.
|
|
5080
6241
|
*/
|
|
5081
6242
|
item_id: string;
|
|
5082
6243
|
|
|
6244
|
+
/**
|
|
6245
|
+
* The pricing model type
|
|
6246
|
+
*/
|
|
5083
6247
|
model_type: 'grouped_with_prorated_minimum';
|
|
5084
6248
|
|
|
5085
6249
|
/**
|
|
@@ -5162,6 +6326,28 @@ export interface NewPlanGroupedWithProratedMinimumPrice {
|
|
|
5162
6326
|
reference_id?: string | null;
|
|
5163
6327
|
}
|
|
5164
6328
|
|
|
6329
|
+
export namespace NewPlanGroupedWithProratedMinimumPrice {
|
|
6330
|
+
/**
|
|
6331
|
+
* Configuration for grouped_with_prorated_minimum pricing
|
|
6332
|
+
*/
|
|
6333
|
+
export interface GroupedWithProratedMinimumConfig {
|
|
6334
|
+
/**
|
|
6335
|
+
* How to determine the groups that should each have a minimum
|
|
6336
|
+
*/
|
|
6337
|
+
grouping_key: string;
|
|
6338
|
+
|
|
6339
|
+
/**
|
|
6340
|
+
* The minimum amount to charge per group
|
|
6341
|
+
*/
|
|
6342
|
+
minimum: string;
|
|
6343
|
+
|
|
6344
|
+
/**
|
|
6345
|
+
* The amount to charge per unit
|
|
6346
|
+
*/
|
|
6347
|
+
unit_rate: string;
|
|
6348
|
+
}
|
|
6349
|
+
}
|
|
6350
|
+
|
|
5165
6351
|
export interface NewPlanMatrixPrice {
|
|
5166
6352
|
/**
|
|
5167
6353
|
* The cadence to bill for this price on.
|
|
@@ -5173,8 +6359,14 @@ export interface NewPlanMatrixPrice {
|
|
|
5173
6359
|
*/
|
|
5174
6360
|
item_id: string;
|
|
5175
6361
|
|
|
6362
|
+
/**
|
|
6363
|
+
* Configuration for matrix pricing
|
|
6364
|
+
*/
|
|
5176
6365
|
matrix_config: MatrixConfig;
|
|
5177
6366
|
|
|
6367
|
+
/**
|
|
6368
|
+
* The pricing model type
|
|
6369
|
+
*/
|
|
5178
6370
|
model_type: 'matrix';
|
|
5179
6371
|
|
|
5180
6372
|
/**
|
|
@@ -5268,8 +6460,14 @@ export interface NewPlanMatrixWithAllocationPrice {
|
|
|
5268
6460
|
*/
|
|
5269
6461
|
item_id: string;
|
|
5270
6462
|
|
|
6463
|
+
/**
|
|
6464
|
+
* Configuration for matrix_with_allocation pricing
|
|
6465
|
+
*/
|
|
5271
6466
|
matrix_with_allocation_config: MatrixWithAllocationConfig;
|
|
5272
6467
|
|
|
6468
|
+
/**
|
|
6469
|
+
* The pricing model type
|
|
6470
|
+
*/
|
|
5273
6471
|
model_type: 'matrix_with_allocation';
|
|
5274
6472
|
|
|
5275
6473
|
/**
|
|
@@ -5363,8 +6561,14 @@ export interface NewPlanMatrixWithDisplayNamePrice {
|
|
|
5363
6561
|
*/
|
|
5364
6562
|
item_id: string;
|
|
5365
6563
|
|
|
5366
|
-
|
|
6564
|
+
/**
|
|
6565
|
+
* Configuration for matrix_with_display_name pricing
|
|
6566
|
+
*/
|
|
6567
|
+
matrix_with_display_name_config: NewPlanMatrixWithDisplayNamePrice.MatrixWithDisplayNameConfig;
|
|
5367
6568
|
|
|
6569
|
+
/**
|
|
6570
|
+
* The pricing model type
|
|
6571
|
+
*/
|
|
5368
6572
|
model_type: 'matrix_with_display_name';
|
|
5369
6573
|
|
|
5370
6574
|
/**
|
|
@@ -5447,20 +6651,65 @@ export interface NewPlanMatrixWithDisplayNamePrice {
|
|
|
5447
6651
|
reference_id?: string | null;
|
|
5448
6652
|
}
|
|
5449
6653
|
|
|
5450
|
-
export
|
|
5451
|
-
/**
|
|
5452
|
-
* The cadence to bill for this price on.
|
|
5453
|
-
*/
|
|
5454
|
-
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
5455
|
-
|
|
6654
|
+
export namespace NewPlanMatrixWithDisplayNamePrice {
|
|
5456
6655
|
/**
|
|
5457
|
-
*
|
|
6656
|
+
* Configuration for matrix_with_display_name pricing
|
|
5458
6657
|
*/
|
|
5459
|
-
|
|
5460
|
-
|
|
5461
|
-
|
|
6658
|
+
export interface MatrixWithDisplayNameConfig {
|
|
6659
|
+
/**
|
|
6660
|
+
* Used to determine the unit rate
|
|
6661
|
+
*/
|
|
6662
|
+
dimension: string;
|
|
5462
6663
|
|
|
5463
|
-
|
|
6664
|
+
/**
|
|
6665
|
+
* Apply per unit pricing to each dimension value
|
|
6666
|
+
*/
|
|
6667
|
+
unit_amounts: Array<MatrixWithDisplayNameConfig.UnitAmount>;
|
|
6668
|
+
}
|
|
6669
|
+
|
|
6670
|
+
export namespace MatrixWithDisplayNameConfig {
|
|
6671
|
+
/**
|
|
6672
|
+
* Configuration for a unit amount item
|
|
6673
|
+
*/
|
|
6674
|
+
export interface UnitAmount {
|
|
6675
|
+
/**
|
|
6676
|
+
* The dimension value
|
|
6677
|
+
*/
|
|
6678
|
+
dimension_value: string;
|
|
6679
|
+
|
|
6680
|
+
/**
|
|
6681
|
+
* Display name for this dimension value
|
|
6682
|
+
*/
|
|
6683
|
+
display_name: string;
|
|
6684
|
+
|
|
6685
|
+
/**
|
|
6686
|
+
* Per unit amount
|
|
6687
|
+
*/
|
|
6688
|
+
unit_amount: string;
|
|
6689
|
+
}
|
|
6690
|
+
}
|
|
6691
|
+
}
|
|
6692
|
+
|
|
6693
|
+
export interface NewPlanMaxGroupTieredPackagePrice {
|
|
6694
|
+
/**
|
|
6695
|
+
* The cadence to bill for this price on.
|
|
6696
|
+
*/
|
|
6697
|
+
cadence: 'annual' | 'semi_annual' | 'monthly' | 'quarterly' | 'one_time' | 'custom';
|
|
6698
|
+
|
|
6699
|
+
/**
|
|
6700
|
+
* The id of the item the price will be associated with.
|
|
6701
|
+
*/
|
|
6702
|
+
item_id: string;
|
|
6703
|
+
|
|
6704
|
+
/**
|
|
6705
|
+
* Configuration for max_group_tiered_package pricing
|
|
6706
|
+
*/
|
|
6707
|
+
max_group_tiered_package_config: NewPlanMaxGroupTieredPackagePrice.MaxGroupTieredPackageConfig;
|
|
6708
|
+
|
|
6709
|
+
/**
|
|
6710
|
+
* The pricing model type
|
|
6711
|
+
*/
|
|
6712
|
+
model_type: 'max_group_tiered_package';
|
|
5464
6713
|
|
|
5465
6714
|
/**
|
|
5466
6715
|
* The name of the price.
|
|
@@ -5542,6 +6791,45 @@ export interface NewPlanMaxGroupTieredPackagePrice {
|
|
|
5542
6791
|
reference_id?: string | null;
|
|
5543
6792
|
}
|
|
5544
6793
|
|
|
6794
|
+
export namespace NewPlanMaxGroupTieredPackagePrice {
|
|
6795
|
+
/**
|
|
6796
|
+
* Configuration for max_group_tiered_package pricing
|
|
6797
|
+
*/
|
|
6798
|
+
export interface MaxGroupTieredPackageConfig {
|
|
6799
|
+
/**
|
|
6800
|
+
* The event property used to group before tiering the group with the highest value
|
|
6801
|
+
*/
|
|
6802
|
+
grouping_key: string;
|
|
6803
|
+
|
|
6804
|
+
/**
|
|
6805
|
+
* Package size
|
|
6806
|
+
*/
|
|
6807
|
+
package_size: string;
|
|
6808
|
+
|
|
6809
|
+
/**
|
|
6810
|
+
* Apply tiered pricing to the largest group after grouping with the provided key.
|
|
6811
|
+
*/
|
|
6812
|
+
tiers: Array<MaxGroupTieredPackageConfig.Tier>;
|
|
6813
|
+
}
|
|
6814
|
+
|
|
6815
|
+
export namespace MaxGroupTieredPackageConfig {
|
|
6816
|
+
/**
|
|
6817
|
+
* Configuration for a single tier
|
|
6818
|
+
*/
|
|
6819
|
+
export interface Tier {
|
|
6820
|
+
/**
|
|
6821
|
+
* Tier lower bound
|
|
6822
|
+
*/
|
|
6823
|
+
tier_lower_bound: string;
|
|
6824
|
+
|
|
6825
|
+
/**
|
|
6826
|
+
* Per unit amount
|
|
6827
|
+
*/
|
|
6828
|
+
unit_amount: string;
|
|
6829
|
+
}
|
|
6830
|
+
}
|
|
6831
|
+
}
|
|
6832
|
+
|
|
5545
6833
|
export interface NewPlanMinimumCompositePrice {
|
|
5546
6834
|
/**
|
|
5547
6835
|
* The cadence to bill for this price on.
|
|
@@ -5553,8 +6841,14 @@ export interface NewPlanMinimumCompositePrice {
|
|
|
5553
6841
|
*/
|
|
5554
6842
|
item_id: string;
|
|
5555
6843
|
|
|
6844
|
+
/**
|
|
6845
|
+
* Configuration for minimum pricing
|
|
6846
|
+
*/
|
|
5556
6847
|
minimum_config: NewPlanMinimumCompositePrice.MinimumConfig;
|
|
5557
6848
|
|
|
6849
|
+
/**
|
|
6850
|
+
* The pricing model type
|
|
6851
|
+
*/
|
|
5558
6852
|
model_type: 'minimum';
|
|
5559
6853
|
|
|
5560
6854
|
/**
|
|
@@ -5638,6 +6932,9 @@ export interface NewPlanMinimumCompositePrice {
|
|
|
5638
6932
|
}
|
|
5639
6933
|
|
|
5640
6934
|
export namespace NewPlanMinimumCompositePrice {
|
|
6935
|
+
/**
|
|
6936
|
+
* Configuration for minimum pricing
|
|
6937
|
+
*/
|
|
5641
6938
|
export interface MinimumConfig {
|
|
5642
6939
|
/**
|
|
5643
6940
|
* The minimum amount to apply
|
|
@@ -5645,10 +6942,9 @@ export namespace NewPlanMinimumCompositePrice {
|
|
|
5645
6942
|
minimum_amount: string;
|
|
5646
6943
|
|
|
5647
6944
|
/**
|
|
5648
|
-
*
|
|
5649
|
-
* service period. Set to false to disable proration.
|
|
6945
|
+
* If true, subtotals from this price are prorated based on the service period
|
|
5650
6946
|
*/
|
|
5651
|
-
prorated?: boolean
|
|
6947
|
+
prorated?: boolean;
|
|
5652
6948
|
}
|
|
5653
6949
|
}
|
|
5654
6950
|
|
|
@@ -5663,6 +6959,9 @@ export interface NewPlanPackagePrice {
|
|
|
5663
6959
|
*/
|
|
5664
6960
|
item_id: string;
|
|
5665
6961
|
|
|
6962
|
+
/**
|
|
6963
|
+
* The pricing model type
|
|
6964
|
+
*/
|
|
5666
6965
|
model_type: 'package';
|
|
5667
6966
|
|
|
5668
6967
|
/**
|
|
@@ -5670,6 +6969,9 @@ export interface NewPlanPackagePrice {
|
|
|
5670
6969
|
*/
|
|
5671
6970
|
name: string;
|
|
5672
6971
|
|
|
6972
|
+
/**
|
|
6973
|
+
* Configuration for package pricing
|
|
6974
|
+
*/
|
|
5673
6975
|
package_config: PackageConfig;
|
|
5674
6976
|
|
|
5675
6977
|
/**
|
|
@@ -5758,6 +7060,9 @@ export interface NewPlanPackageWithAllocationPrice {
|
|
|
5758
7060
|
*/
|
|
5759
7061
|
item_id: string;
|
|
5760
7062
|
|
|
7063
|
+
/**
|
|
7064
|
+
* The pricing model type
|
|
7065
|
+
*/
|
|
5761
7066
|
model_type: 'package_with_allocation';
|
|
5762
7067
|
|
|
5763
7068
|
/**
|
|
@@ -5765,7 +7070,10 @@ export interface NewPlanPackageWithAllocationPrice {
|
|
|
5765
7070
|
*/
|
|
5766
7071
|
name: string;
|
|
5767
7072
|
|
|
5768
|
-
|
|
7073
|
+
/**
|
|
7074
|
+
* Configuration for package_with_allocation pricing
|
|
7075
|
+
*/
|
|
7076
|
+
package_with_allocation_config: NewPlanPackageWithAllocationPrice.PackageWithAllocationConfig;
|
|
5769
7077
|
|
|
5770
7078
|
/**
|
|
5771
7079
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -5842,6 +7150,28 @@ export interface NewPlanPackageWithAllocationPrice {
|
|
|
5842
7150
|
reference_id?: string | null;
|
|
5843
7151
|
}
|
|
5844
7152
|
|
|
7153
|
+
export namespace NewPlanPackageWithAllocationPrice {
|
|
7154
|
+
/**
|
|
7155
|
+
* Configuration for package_with_allocation pricing
|
|
7156
|
+
*/
|
|
7157
|
+
export interface PackageWithAllocationConfig {
|
|
7158
|
+
/**
|
|
7159
|
+
* Usage allocation
|
|
7160
|
+
*/
|
|
7161
|
+
allocation: string;
|
|
7162
|
+
|
|
7163
|
+
/**
|
|
7164
|
+
* Price per package
|
|
7165
|
+
*/
|
|
7166
|
+
package_amount: string;
|
|
7167
|
+
|
|
7168
|
+
/**
|
|
7169
|
+
* Package size
|
|
7170
|
+
*/
|
|
7171
|
+
package_size: string;
|
|
7172
|
+
}
|
|
7173
|
+
}
|
|
7174
|
+
|
|
5845
7175
|
export interface NewPlanScalableMatrixWithTieredPricingPrice {
|
|
5846
7176
|
/**
|
|
5847
7177
|
* The cadence to bill for this price on.
|
|
@@ -5853,6 +7183,9 @@ export interface NewPlanScalableMatrixWithTieredPricingPrice {
|
|
|
5853
7183
|
*/
|
|
5854
7184
|
item_id: string;
|
|
5855
7185
|
|
|
7186
|
+
/**
|
|
7187
|
+
* The pricing model type
|
|
7188
|
+
*/
|
|
5856
7189
|
model_type: 'scalable_matrix_with_tiered_pricing';
|
|
5857
7190
|
|
|
5858
7191
|
/**
|
|
@@ -5860,7 +7193,10 @@ export interface NewPlanScalableMatrixWithTieredPricingPrice {
|
|
|
5860
7193
|
*/
|
|
5861
7194
|
name: string;
|
|
5862
7195
|
|
|
5863
|
-
|
|
7196
|
+
/**
|
|
7197
|
+
* Configuration for scalable_matrix_with_tiered_pricing pricing
|
|
7198
|
+
*/
|
|
7199
|
+
scalable_matrix_with_tiered_pricing_config: NewPlanScalableMatrixWithTieredPricingPrice.ScalableMatrixWithTieredPricingConfig;
|
|
5864
7200
|
|
|
5865
7201
|
/**
|
|
5866
7202
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -5937,6 +7273,70 @@ export interface NewPlanScalableMatrixWithTieredPricingPrice {
|
|
|
5937
7273
|
reference_id?: string | null;
|
|
5938
7274
|
}
|
|
5939
7275
|
|
|
7276
|
+
export namespace NewPlanScalableMatrixWithTieredPricingPrice {
|
|
7277
|
+
/**
|
|
7278
|
+
* Configuration for scalable_matrix_with_tiered_pricing pricing
|
|
7279
|
+
*/
|
|
7280
|
+
export interface ScalableMatrixWithTieredPricingConfig {
|
|
7281
|
+
/**
|
|
7282
|
+
* Used for the scalable matrix first dimension
|
|
7283
|
+
*/
|
|
7284
|
+
first_dimension: string;
|
|
7285
|
+
|
|
7286
|
+
/**
|
|
7287
|
+
* Apply a scaling factor to each dimension
|
|
7288
|
+
*/
|
|
7289
|
+
matrix_scaling_factors: Array<ScalableMatrixWithTieredPricingConfig.MatrixScalingFactor>;
|
|
7290
|
+
|
|
7291
|
+
/**
|
|
7292
|
+
* Tier pricing structure
|
|
7293
|
+
*/
|
|
7294
|
+
tiers: Array<ScalableMatrixWithTieredPricingConfig.Tier>;
|
|
7295
|
+
|
|
7296
|
+
/**
|
|
7297
|
+
* Used for the scalable matrix second dimension (optional)
|
|
7298
|
+
*/
|
|
7299
|
+
second_dimension?: string | null;
|
|
7300
|
+
}
|
|
7301
|
+
|
|
7302
|
+
export namespace ScalableMatrixWithTieredPricingConfig {
|
|
7303
|
+
/**
|
|
7304
|
+
* Configuration for a single matrix scaling factor
|
|
7305
|
+
*/
|
|
7306
|
+
export interface MatrixScalingFactor {
|
|
7307
|
+
/**
|
|
7308
|
+
* First dimension value
|
|
7309
|
+
*/
|
|
7310
|
+
first_dimension_value: string;
|
|
7311
|
+
|
|
7312
|
+
/**
|
|
7313
|
+
* Scaling factor
|
|
7314
|
+
*/
|
|
7315
|
+
scaling_factor: string;
|
|
7316
|
+
|
|
7317
|
+
/**
|
|
7318
|
+
* Second dimension value (optional)
|
|
7319
|
+
*/
|
|
7320
|
+
second_dimension_value?: string | null;
|
|
7321
|
+
}
|
|
7322
|
+
|
|
7323
|
+
/**
|
|
7324
|
+
* Configuration for a single tier entry with business logic
|
|
7325
|
+
*/
|
|
7326
|
+
export interface Tier {
|
|
7327
|
+
/**
|
|
7328
|
+
* Tier lower bound
|
|
7329
|
+
*/
|
|
7330
|
+
tier_lower_bound: string;
|
|
7331
|
+
|
|
7332
|
+
/**
|
|
7333
|
+
* Per unit amount
|
|
7334
|
+
*/
|
|
7335
|
+
unit_amount: string;
|
|
7336
|
+
}
|
|
7337
|
+
}
|
|
7338
|
+
}
|
|
7339
|
+
|
|
5940
7340
|
export interface NewPlanScalableMatrixWithUnitPricingPrice {
|
|
5941
7341
|
/**
|
|
5942
7342
|
* The cadence to bill for this price on.
|
|
@@ -5948,6 +7348,9 @@ export interface NewPlanScalableMatrixWithUnitPricingPrice {
|
|
|
5948
7348
|
*/
|
|
5949
7349
|
item_id: string;
|
|
5950
7350
|
|
|
7351
|
+
/**
|
|
7352
|
+
* The pricing model type
|
|
7353
|
+
*/
|
|
5951
7354
|
model_type: 'scalable_matrix_with_unit_pricing';
|
|
5952
7355
|
|
|
5953
7356
|
/**
|
|
@@ -5955,7 +7358,10 @@ export interface NewPlanScalableMatrixWithUnitPricingPrice {
|
|
|
5955
7358
|
*/
|
|
5956
7359
|
name: string;
|
|
5957
7360
|
|
|
5958
|
-
|
|
7361
|
+
/**
|
|
7362
|
+
* Configuration for scalable_matrix_with_unit_pricing pricing
|
|
7363
|
+
*/
|
|
7364
|
+
scalable_matrix_with_unit_pricing_config: NewPlanScalableMatrixWithUnitPricingPrice.ScalableMatrixWithUnitPricingConfig;
|
|
5959
7365
|
|
|
5960
7366
|
/**
|
|
5961
7367
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -6032,6 +7438,60 @@ export interface NewPlanScalableMatrixWithUnitPricingPrice {
|
|
|
6032
7438
|
reference_id?: string | null;
|
|
6033
7439
|
}
|
|
6034
7440
|
|
|
7441
|
+
export namespace NewPlanScalableMatrixWithUnitPricingPrice {
|
|
7442
|
+
/**
|
|
7443
|
+
* Configuration for scalable_matrix_with_unit_pricing pricing
|
|
7444
|
+
*/
|
|
7445
|
+
export interface ScalableMatrixWithUnitPricingConfig {
|
|
7446
|
+
/**
|
|
7447
|
+
* Used to determine the unit rate
|
|
7448
|
+
*/
|
|
7449
|
+
first_dimension: string;
|
|
7450
|
+
|
|
7451
|
+
/**
|
|
7452
|
+
* Apply a scaling factor to each dimension
|
|
7453
|
+
*/
|
|
7454
|
+
matrix_scaling_factors: Array<ScalableMatrixWithUnitPricingConfig.MatrixScalingFactor>;
|
|
7455
|
+
|
|
7456
|
+
/**
|
|
7457
|
+
* The final unit price to rate against the output of the matrix
|
|
7458
|
+
*/
|
|
7459
|
+
unit_price: string;
|
|
7460
|
+
|
|
7461
|
+
/**
|
|
7462
|
+
* If true, the unit price will be prorated to the billing period
|
|
7463
|
+
*/
|
|
7464
|
+
prorate?: boolean | null;
|
|
7465
|
+
|
|
7466
|
+
/**
|
|
7467
|
+
* Used to determine the unit rate (optional)
|
|
7468
|
+
*/
|
|
7469
|
+
second_dimension?: string | null;
|
|
7470
|
+
}
|
|
7471
|
+
|
|
7472
|
+
export namespace ScalableMatrixWithUnitPricingConfig {
|
|
7473
|
+
/**
|
|
7474
|
+
* Configuration for a single matrix scaling factor
|
|
7475
|
+
*/
|
|
7476
|
+
export interface MatrixScalingFactor {
|
|
7477
|
+
/**
|
|
7478
|
+
* First dimension value
|
|
7479
|
+
*/
|
|
7480
|
+
first_dimension_value: string;
|
|
7481
|
+
|
|
7482
|
+
/**
|
|
7483
|
+
* Scaling factor
|
|
7484
|
+
*/
|
|
7485
|
+
scaling_factor: string;
|
|
7486
|
+
|
|
7487
|
+
/**
|
|
7488
|
+
* Second dimension value (optional)
|
|
7489
|
+
*/
|
|
7490
|
+
second_dimension_value?: string | null;
|
|
7491
|
+
}
|
|
7492
|
+
}
|
|
7493
|
+
}
|
|
7494
|
+
|
|
6035
7495
|
export interface NewPlanThresholdTotalAmountPrice {
|
|
6036
7496
|
/**
|
|
6037
7497
|
* The cadence to bill for this price on.
|
|
@@ -6043,6 +7503,9 @@ export interface NewPlanThresholdTotalAmountPrice {
|
|
|
6043
7503
|
*/
|
|
6044
7504
|
item_id: string;
|
|
6045
7505
|
|
|
7506
|
+
/**
|
|
7507
|
+
* The pricing model type
|
|
7508
|
+
*/
|
|
6046
7509
|
model_type: 'threshold_total_amount';
|
|
6047
7510
|
|
|
6048
7511
|
/**
|
|
@@ -6050,7 +7513,10 @@ export interface NewPlanThresholdTotalAmountPrice {
|
|
|
6050
7513
|
*/
|
|
6051
7514
|
name: string;
|
|
6052
7515
|
|
|
6053
|
-
|
|
7516
|
+
/**
|
|
7517
|
+
* Configuration for threshold_total_amount pricing
|
|
7518
|
+
*/
|
|
7519
|
+
threshold_total_amount_config: NewPlanThresholdTotalAmountPrice.ThresholdTotalAmountConfig;
|
|
6054
7520
|
|
|
6055
7521
|
/**
|
|
6056
7522
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -6127,7 +7593,42 @@ export interface NewPlanThresholdTotalAmountPrice {
|
|
|
6127
7593
|
reference_id?: string | null;
|
|
6128
7594
|
}
|
|
6129
7595
|
|
|
6130
|
-
export
|
|
7596
|
+
export namespace NewPlanThresholdTotalAmountPrice {
|
|
7597
|
+
/**
|
|
7598
|
+
* Configuration for threshold_total_amount pricing
|
|
7599
|
+
*/
|
|
7600
|
+
export interface ThresholdTotalAmountConfig {
|
|
7601
|
+
/**
|
|
7602
|
+
* When the quantity consumed passes a provided threshold, the configured total
|
|
7603
|
+
* will be charged
|
|
7604
|
+
*/
|
|
7605
|
+
consumption_table: Array<ThresholdTotalAmountConfig.ConsumptionTable>;
|
|
7606
|
+
|
|
7607
|
+
/**
|
|
7608
|
+
* If true, the unit price will be prorated to the billing period
|
|
7609
|
+
*/
|
|
7610
|
+
prorate?: boolean | null;
|
|
7611
|
+
}
|
|
7612
|
+
|
|
7613
|
+
export namespace ThresholdTotalAmountConfig {
|
|
7614
|
+
/**
|
|
7615
|
+
* Configuration for a single threshold
|
|
7616
|
+
*/
|
|
7617
|
+
export interface ConsumptionTable {
|
|
7618
|
+
/**
|
|
7619
|
+
* Quantity threshold
|
|
7620
|
+
*/
|
|
7621
|
+
threshold: string;
|
|
7622
|
+
|
|
7623
|
+
/**
|
|
7624
|
+
* Total amount for this threshold
|
|
7625
|
+
*/
|
|
7626
|
+
total_amount: string;
|
|
7627
|
+
}
|
|
7628
|
+
}
|
|
7629
|
+
}
|
|
7630
|
+
|
|
7631
|
+
export interface NewPlanTieredPackagePrice {
|
|
6131
7632
|
/**
|
|
6132
7633
|
* The cadence to bill for this price on.
|
|
6133
7634
|
*/
|
|
@@ -6138,14 +7639,20 @@ export interface NewPlanTierWithProrationPrice {
|
|
|
6138
7639
|
*/
|
|
6139
7640
|
item_id: string;
|
|
6140
7641
|
|
|
6141
|
-
|
|
7642
|
+
/**
|
|
7643
|
+
* The pricing model type
|
|
7644
|
+
*/
|
|
7645
|
+
model_type: 'tiered_package';
|
|
6142
7646
|
|
|
6143
7647
|
/**
|
|
6144
7648
|
* The name of the price.
|
|
6145
7649
|
*/
|
|
6146
7650
|
name: string;
|
|
6147
7651
|
|
|
6148
|
-
|
|
7652
|
+
/**
|
|
7653
|
+
* Configuration for tiered_package pricing
|
|
7654
|
+
*/
|
|
7655
|
+
tiered_package_config: NewPlanTieredPackagePrice.TieredPackageConfig;
|
|
6149
7656
|
|
|
6150
7657
|
/**
|
|
6151
7658
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -6222,7 +7729,42 @@ export interface NewPlanTierWithProrationPrice {
|
|
|
6222
7729
|
reference_id?: string | null;
|
|
6223
7730
|
}
|
|
6224
7731
|
|
|
6225
|
-
export
|
|
7732
|
+
export namespace NewPlanTieredPackagePrice {
|
|
7733
|
+
/**
|
|
7734
|
+
* Configuration for tiered_package pricing
|
|
7735
|
+
*/
|
|
7736
|
+
export interface TieredPackageConfig {
|
|
7737
|
+
/**
|
|
7738
|
+
* Package size
|
|
7739
|
+
*/
|
|
7740
|
+
package_size: string;
|
|
7741
|
+
|
|
7742
|
+
/**
|
|
7743
|
+
* Apply tiered pricing after rounding up the quantity to the package size. Tiers
|
|
7744
|
+
* are defined using exclusive lower bounds.
|
|
7745
|
+
*/
|
|
7746
|
+
tiers: Array<TieredPackageConfig.Tier>;
|
|
7747
|
+
}
|
|
7748
|
+
|
|
7749
|
+
export namespace TieredPackageConfig {
|
|
7750
|
+
/**
|
|
7751
|
+
* Configuration for a single tier with business logic
|
|
7752
|
+
*/
|
|
7753
|
+
export interface Tier {
|
|
7754
|
+
/**
|
|
7755
|
+
* Price per package
|
|
7756
|
+
*/
|
|
7757
|
+
per_unit: string;
|
|
7758
|
+
|
|
7759
|
+
/**
|
|
7760
|
+
* Tier lower bound
|
|
7761
|
+
*/
|
|
7762
|
+
tier_lower_bound: string;
|
|
7763
|
+
}
|
|
7764
|
+
}
|
|
7765
|
+
}
|
|
7766
|
+
|
|
7767
|
+
export interface NewPlanTieredPackageWithMinimumPrice {
|
|
6226
7768
|
/**
|
|
6227
7769
|
* The cadence to bill for this price on.
|
|
6228
7770
|
*/
|
|
@@ -6233,14 +7775,20 @@ export interface NewPlanTieredPackagePrice {
|
|
|
6233
7775
|
*/
|
|
6234
7776
|
item_id: string;
|
|
6235
7777
|
|
|
6236
|
-
|
|
7778
|
+
/**
|
|
7779
|
+
* The pricing model type
|
|
7780
|
+
*/
|
|
7781
|
+
model_type: 'tiered_package_with_minimum';
|
|
6237
7782
|
|
|
6238
7783
|
/**
|
|
6239
7784
|
* The name of the price.
|
|
6240
7785
|
*/
|
|
6241
7786
|
name: string;
|
|
6242
7787
|
|
|
6243
|
-
|
|
7788
|
+
/**
|
|
7789
|
+
* Configuration for tiered_package_with_minimum pricing
|
|
7790
|
+
*/
|
|
7791
|
+
tiered_package_with_minimum_config: NewPlanTieredPackageWithMinimumPrice.TieredPackageWithMinimumConfig;
|
|
6244
7792
|
|
|
6245
7793
|
/**
|
|
6246
7794
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -6317,7 +7865,47 @@ export interface NewPlanTieredPackagePrice {
|
|
|
6317
7865
|
reference_id?: string | null;
|
|
6318
7866
|
}
|
|
6319
7867
|
|
|
6320
|
-
export
|
|
7868
|
+
export namespace NewPlanTieredPackageWithMinimumPrice {
|
|
7869
|
+
/**
|
|
7870
|
+
* Configuration for tiered_package_with_minimum pricing
|
|
7871
|
+
*/
|
|
7872
|
+
export interface TieredPackageWithMinimumConfig {
|
|
7873
|
+
/**
|
|
7874
|
+
* Package size
|
|
7875
|
+
*/
|
|
7876
|
+
package_size: number;
|
|
7877
|
+
|
|
7878
|
+
/**
|
|
7879
|
+
* Apply tiered pricing after rounding up the quantity to the package size. Tiers
|
|
7880
|
+
* are defined using exclusive lower bounds.
|
|
7881
|
+
*/
|
|
7882
|
+
tiers: Array<TieredPackageWithMinimumConfig.Tier>;
|
|
7883
|
+
}
|
|
7884
|
+
|
|
7885
|
+
export namespace TieredPackageWithMinimumConfig {
|
|
7886
|
+
/**
|
|
7887
|
+
* Configuration for a single tier
|
|
7888
|
+
*/
|
|
7889
|
+
export interface Tier {
|
|
7890
|
+
/**
|
|
7891
|
+
* Minimum amount
|
|
7892
|
+
*/
|
|
7893
|
+
minimum_amount: string;
|
|
7894
|
+
|
|
7895
|
+
/**
|
|
7896
|
+
* Price per package
|
|
7897
|
+
*/
|
|
7898
|
+
per_unit: string;
|
|
7899
|
+
|
|
7900
|
+
/**
|
|
7901
|
+
* Tier lower bound
|
|
7902
|
+
*/
|
|
7903
|
+
tier_lower_bound: string;
|
|
7904
|
+
}
|
|
7905
|
+
}
|
|
7906
|
+
}
|
|
7907
|
+
|
|
7908
|
+
export interface NewPlanTieredPrice {
|
|
6321
7909
|
/**
|
|
6322
7910
|
* The cadence to bill for this price on.
|
|
6323
7911
|
*/
|
|
@@ -6328,14 +7916,20 @@ export interface NewPlanTieredPackageWithMinimumPrice {
|
|
|
6328
7916
|
*/
|
|
6329
7917
|
item_id: string;
|
|
6330
7918
|
|
|
6331
|
-
|
|
7919
|
+
/**
|
|
7920
|
+
* The pricing model type
|
|
7921
|
+
*/
|
|
7922
|
+
model_type: 'tiered';
|
|
6332
7923
|
|
|
6333
7924
|
/**
|
|
6334
7925
|
* The name of the price.
|
|
6335
7926
|
*/
|
|
6336
7927
|
name: string;
|
|
6337
7928
|
|
|
6338
|
-
|
|
7929
|
+
/**
|
|
7930
|
+
* Configuration for tiered pricing
|
|
7931
|
+
*/
|
|
7932
|
+
tiered_config: TieredConfig;
|
|
6339
7933
|
|
|
6340
7934
|
/**
|
|
6341
7935
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -6412,7 +8006,7 @@ export interface NewPlanTieredPackageWithMinimumPrice {
|
|
|
6412
8006
|
reference_id?: string | null;
|
|
6413
8007
|
}
|
|
6414
8008
|
|
|
6415
|
-
export interface
|
|
8009
|
+
export interface NewPlanTieredWithMinimumPrice {
|
|
6416
8010
|
/**
|
|
6417
8011
|
* The cadence to bill for this price on.
|
|
6418
8012
|
*/
|
|
@@ -6423,14 +8017,20 @@ export interface NewPlanTieredPrice {
|
|
|
6423
8017
|
*/
|
|
6424
8018
|
item_id: string;
|
|
6425
8019
|
|
|
6426
|
-
|
|
6427
|
-
|
|
8020
|
+
/**
|
|
8021
|
+
* The pricing model type
|
|
8022
|
+
*/
|
|
8023
|
+
model_type: 'tiered_with_minimum';
|
|
8024
|
+
|
|
6428
8025
|
/**
|
|
6429
8026
|
* The name of the price.
|
|
6430
8027
|
*/
|
|
6431
8028
|
name: string;
|
|
6432
8029
|
|
|
6433
|
-
|
|
8030
|
+
/**
|
|
8031
|
+
* Configuration for tiered_with_minimum pricing
|
|
8032
|
+
*/
|
|
8033
|
+
tiered_with_minimum_config: NewPlanTieredWithMinimumPrice.TieredWithMinimumConfig;
|
|
6434
8034
|
|
|
6435
8035
|
/**
|
|
6436
8036
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -6507,99 +8107,49 @@ export interface NewPlanTieredPrice {
|
|
|
6507
8107
|
reference_id?: string | null;
|
|
6508
8108
|
}
|
|
6509
8109
|
|
|
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
|
-
|
|
8110
|
+
export namespace NewPlanTieredWithMinimumPrice {
|
|
6569
8111
|
/**
|
|
6570
|
-
*
|
|
8112
|
+
* Configuration for tiered_with_minimum pricing
|
|
6571
8113
|
*/
|
|
6572
|
-
|
|
8114
|
+
export interface TieredWithMinimumConfig {
|
|
8115
|
+
/**
|
|
8116
|
+
* Tiered pricing with a minimum amount dependent on the volume tier. Tiers are
|
|
8117
|
+
* defined using exclusive lower bounds.
|
|
8118
|
+
*/
|
|
8119
|
+
tiers: Array<TieredWithMinimumConfig.Tier>;
|
|
6573
8120
|
|
|
6574
|
-
|
|
6575
|
-
|
|
6576
|
-
|
|
6577
|
-
|
|
6578
|
-
fixed_price_quantity?: number | null;
|
|
8121
|
+
/**
|
|
8122
|
+
* If true, tiers with an accrued amount of 0 will not be included in the rating.
|
|
8123
|
+
*/
|
|
8124
|
+
hide_zero_amount_tiers?: boolean;
|
|
6579
8125
|
|
|
6580
|
-
|
|
6581
|
-
|
|
6582
|
-
|
|
6583
|
-
|
|
8126
|
+
/**
|
|
8127
|
+
* If true, the unit price will be prorated to the billing period
|
|
8128
|
+
*/
|
|
8129
|
+
prorate?: boolean;
|
|
8130
|
+
}
|
|
6584
8131
|
|
|
6585
|
-
|
|
6586
|
-
|
|
6587
|
-
|
|
6588
|
-
|
|
6589
|
-
|
|
8132
|
+
export namespace TieredWithMinimumConfig {
|
|
8133
|
+
/**
|
|
8134
|
+
* Configuration for a single tier
|
|
8135
|
+
*/
|
|
8136
|
+
export interface Tier {
|
|
8137
|
+
/**
|
|
8138
|
+
* Minimum amount
|
|
8139
|
+
*/
|
|
8140
|
+
minimum_amount: string;
|
|
6590
8141
|
|
|
6591
|
-
|
|
6592
|
-
|
|
6593
|
-
|
|
6594
|
-
|
|
6595
|
-
*/
|
|
6596
|
-
metadata?: { [key: string]: string | null } | null;
|
|
8142
|
+
/**
|
|
8143
|
+
* Tier lower bound
|
|
8144
|
+
*/
|
|
8145
|
+
tier_lower_bound: string;
|
|
6597
8146
|
|
|
6598
|
-
|
|
6599
|
-
|
|
6600
|
-
|
|
6601
|
-
|
|
6602
|
-
|
|
8147
|
+
/**
|
|
8148
|
+
* Per unit amount
|
|
8149
|
+
*/
|
|
8150
|
+
unit_amount: string;
|
|
8151
|
+
}
|
|
8152
|
+
}
|
|
6603
8153
|
}
|
|
6604
8154
|
|
|
6605
8155
|
export interface NewPlanUnitPrice {
|
|
@@ -6613,6 +8163,9 @@ export interface NewPlanUnitPrice {
|
|
|
6613
8163
|
*/
|
|
6614
8164
|
item_id: string;
|
|
6615
8165
|
|
|
8166
|
+
/**
|
|
8167
|
+
* The pricing model type
|
|
8168
|
+
*/
|
|
6616
8169
|
model_type: 'unit';
|
|
6617
8170
|
|
|
6618
8171
|
/**
|
|
@@ -6620,6 +8173,9 @@ export interface NewPlanUnitPrice {
|
|
|
6620
8173
|
*/
|
|
6621
8174
|
name: string;
|
|
6622
8175
|
|
|
8176
|
+
/**
|
|
8177
|
+
* Configuration for unit pricing
|
|
8178
|
+
*/
|
|
6623
8179
|
unit_config: UnitConfig;
|
|
6624
8180
|
|
|
6625
8181
|
/**
|
|
@@ -6708,6 +8264,9 @@ export interface NewPlanUnitWithPercentPrice {
|
|
|
6708
8264
|
*/
|
|
6709
8265
|
item_id: string;
|
|
6710
8266
|
|
|
8267
|
+
/**
|
|
8268
|
+
* The pricing model type
|
|
8269
|
+
*/
|
|
6711
8270
|
model_type: 'unit_with_percent';
|
|
6712
8271
|
|
|
6713
8272
|
/**
|
|
@@ -6715,7 +8274,10 @@ export interface NewPlanUnitWithPercentPrice {
|
|
|
6715
8274
|
*/
|
|
6716
8275
|
name: string;
|
|
6717
8276
|
|
|
6718
|
-
|
|
8277
|
+
/**
|
|
8278
|
+
* Configuration for unit_with_percent pricing
|
|
8279
|
+
*/
|
|
8280
|
+
unit_with_percent_config: NewPlanUnitWithPercentPrice.UnitWithPercentConfig;
|
|
6719
8281
|
|
|
6720
8282
|
/**
|
|
6721
8283
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -6792,6 +8354,23 @@ export interface NewPlanUnitWithPercentPrice {
|
|
|
6792
8354
|
reference_id?: string | null;
|
|
6793
8355
|
}
|
|
6794
8356
|
|
|
8357
|
+
export namespace NewPlanUnitWithPercentPrice {
|
|
8358
|
+
/**
|
|
8359
|
+
* Configuration for unit_with_percent pricing
|
|
8360
|
+
*/
|
|
8361
|
+
export interface UnitWithPercentConfig {
|
|
8362
|
+
/**
|
|
8363
|
+
* What percent, out of 100, of the calculated total to charge
|
|
8364
|
+
*/
|
|
8365
|
+
percent: string;
|
|
8366
|
+
|
|
8367
|
+
/**
|
|
8368
|
+
* Rate per unit of usage
|
|
8369
|
+
*/
|
|
8370
|
+
unit_amount: string;
|
|
8371
|
+
}
|
|
8372
|
+
}
|
|
8373
|
+
|
|
6795
8374
|
export interface NewPlanUnitWithProrationPrice {
|
|
6796
8375
|
/**
|
|
6797
8376
|
* The cadence to bill for this price on.
|
|
@@ -6803,6 +8382,9 @@ export interface NewPlanUnitWithProrationPrice {
|
|
|
6803
8382
|
*/
|
|
6804
8383
|
item_id: string;
|
|
6805
8384
|
|
|
8385
|
+
/**
|
|
8386
|
+
* The pricing model type
|
|
8387
|
+
*/
|
|
6806
8388
|
model_type: 'unit_with_proration';
|
|
6807
8389
|
|
|
6808
8390
|
/**
|
|
@@ -6810,7 +8392,10 @@ export interface NewPlanUnitWithProrationPrice {
|
|
|
6810
8392
|
*/
|
|
6811
8393
|
name: string;
|
|
6812
8394
|
|
|
6813
|
-
|
|
8395
|
+
/**
|
|
8396
|
+
* Configuration for unit_with_proration pricing
|
|
8397
|
+
*/
|
|
8398
|
+
unit_with_proration_config: NewPlanUnitWithProrationPrice.UnitWithProrationConfig;
|
|
6814
8399
|
|
|
6815
8400
|
/**
|
|
6816
8401
|
* The id of the billable metric for the price. Only needed if the price is
|
|
@@ -6887,6 +8472,18 @@ export interface NewPlanUnitWithProrationPrice {
|
|
|
6887
8472
|
reference_id?: string | null;
|
|
6888
8473
|
}
|
|
6889
8474
|
|
|
8475
|
+
export namespace NewPlanUnitWithProrationPrice {
|
|
8476
|
+
/**
|
|
8477
|
+
* Configuration for unit_with_proration pricing
|
|
8478
|
+
*/
|
|
8479
|
+
export interface UnitWithProrationConfig {
|
|
8480
|
+
/**
|
|
8481
|
+
* Rate per unit of usage
|
|
8482
|
+
*/
|
|
8483
|
+
unit_amount: string;
|
|
8484
|
+
}
|
|
8485
|
+
}
|
|
8486
|
+
|
|
6890
8487
|
export interface NewUsageDiscount {
|
|
6891
8488
|
adjustment_type: 'usage_discount';
|
|
6892
8489
|
|
|
@@ -6944,6 +8541,9 @@ export interface OtherSubLineItem {
|
|
|
6944
8541
|
type: "'null'";
|
|
6945
8542
|
}
|
|
6946
8543
|
|
|
8544
|
+
/**
|
|
8545
|
+
* Configuration for package pricing
|
|
8546
|
+
*/
|
|
6947
8547
|
export interface PackageConfig {
|
|
6948
8548
|
/**
|
|
6949
8549
|
* A currency amount to rate usage by
|
|
@@ -7282,14 +8882,14 @@ export interface PlanPhaseUsageDiscountAdjustment {
|
|
|
7282
8882
|
*/
|
|
7283
8883
|
export type Price =
|
|
7284
8884
|
| Price.UnitPrice
|
|
7285
|
-
| Price.PackagePrice
|
|
7286
|
-
| Price.MatrixPrice
|
|
7287
8885
|
| Price.TieredPrice
|
|
7288
8886
|
| Price.BulkPrice
|
|
8887
|
+
| Price.PackagePrice
|
|
8888
|
+
| Price.MatrixPrice
|
|
7289
8889
|
| Price.ThresholdTotalAmountPrice
|
|
7290
8890
|
| Price.TieredPackagePrice
|
|
7291
|
-
| Price.GroupedTieredPrice
|
|
7292
8891
|
| Price.TieredWithMinimumPrice
|
|
8892
|
+
| Price.GroupedTieredPrice
|
|
7293
8893
|
| Price.TieredPackageWithMinimumPrice
|
|
7294
8894
|
| Price.PackageWithAllocationPrice
|
|
7295
8895
|
| Price.UnitWithPercentPrice
|
|
@@ -7297,16 +8897,16 @@ export type Price =
|
|
|
7297
8897
|
| Price.TieredWithProrationPrice
|
|
7298
8898
|
| Price.UnitWithProrationPrice
|
|
7299
8899
|
| Price.GroupedAllocationPrice
|
|
8900
|
+
| Price.BulkWithProrationPrice
|
|
7300
8901
|
| Price.GroupedWithProratedMinimumPrice
|
|
7301
8902
|
| Price.GroupedWithMeteredMinimumPrice
|
|
8903
|
+
| Price.GroupedWithMinMaxThresholdsPrice
|
|
7302
8904
|
| Price.MatrixWithDisplayNamePrice
|
|
7303
|
-
| Price.BulkWithProrationPrice
|
|
7304
8905
|
| Price.GroupedTieredPackagePrice
|
|
7305
8906
|
| Price.MaxGroupTieredPackagePrice
|
|
7306
8907
|
| Price.ScalableMatrixWithUnitPricingPrice
|
|
7307
8908
|
| Price.ScalableMatrixWithTieredPricingPrice
|
|
7308
8909
|
| Price.CumulativeGroupedBulkPrice
|
|
7309
|
-
| Price.GroupedWithMinMaxThresholdsPrice
|
|
7310
8910
|
| Price.MinimumCompositePrice;
|
|
7311
8911
|
|
|
7312
8912
|
export namespace Price {
|
|
@@ -7372,13 +8972,16 @@ export namespace Price {
|
|
|
7372
8972
|
*/
|
|
7373
8973
|
minimum_amount: string | null;
|
|
7374
8974
|
|
|
8975
|
+
/**
|
|
8976
|
+
* The pricing model type
|
|
8977
|
+
*/
|
|
7375
8978
|
model_type: 'unit';
|
|
7376
8979
|
|
|
7377
8980
|
name: string;
|
|
7378
8981
|
|
|
7379
8982
|
plan_phase_order: number | null;
|
|
7380
8983
|
|
|
7381
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
8984
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
7382
8985
|
|
|
7383
8986
|
/**
|
|
7384
8987
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -7386,12 +8989,15 @@ export namespace Price {
|
|
|
7386
8989
|
*/
|
|
7387
8990
|
replaces_price_id: string | null;
|
|
7388
8991
|
|
|
8992
|
+
/**
|
|
8993
|
+
* Configuration for unit pricing
|
|
8994
|
+
*/
|
|
7389
8995
|
unit_config: Shared.UnitConfig;
|
|
7390
8996
|
|
|
7391
8997
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
7392
8998
|
}
|
|
7393
8999
|
|
|
7394
|
-
export interface
|
|
9000
|
+
export interface TieredPrice {
|
|
7395
9001
|
id: string;
|
|
7396
9002
|
|
|
7397
9003
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -7453,15 +9059,16 @@ export namespace Price {
|
|
|
7453
9059
|
*/
|
|
7454
9060
|
minimum_amount: string | null;
|
|
7455
9061
|
|
|
7456
|
-
|
|
9062
|
+
/**
|
|
9063
|
+
* The pricing model type
|
|
9064
|
+
*/
|
|
9065
|
+
model_type: 'tiered';
|
|
7457
9066
|
|
|
7458
9067
|
name: string;
|
|
7459
9068
|
|
|
7460
|
-
package_config: Shared.PackageConfig;
|
|
7461
|
-
|
|
7462
9069
|
plan_phase_order: number | null;
|
|
7463
9070
|
|
|
7464
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
9071
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
7465
9072
|
|
|
7466
9073
|
/**
|
|
7467
9074
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -7469,16 +9076,26 @@ export namespace Price {
|
|
|
7469
9076
|
*/
|
|
7470
9077
|
replaces_price_id: string | null;
|
|
7471
9078
|
|
|
9079
|
+
/**
|
|
9080
|
+
* Configuration for tiered pricing
|
|
9081
|
+
*/
|
|
9082
|
+
tiered_config: Shared.TieredConfig;
|
|
9083
|
+
|
|
7472
9084
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
7473
9085
|
}
|
|
7474
9086
|
|
|
7475
|
-
export interface
|
|
9087
|
+
export interface BulkPrice {
|
|
7476
9088
|
id: string;
|
|
7477
9089
|
|
|
7478
9090
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
7479
9091
|
|
|
7480
9092
|
billing_cycle_configuration: Shared.BillingCycleConfiguration;
|
|
7481
9093
|
|
|
9094
|
+
/**
|
|
9095
|
+
* Configuration for bulk pricing
|
|
9096
|
+
*/
|
|
9097
|
+
bulk_config: Shared.BulkConfig;
|
|
9098
|
+
|
|
7482
9099
|
cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom';
|
|
7483
9100
|
|
|
7484
9101
|
composite_price_filters: Array<Shared.TransformPriceFilter> | null;
|
|
@@ -7506,8 +9123,6 @@ export namespace Price {
|
|
|
7506
9123
|
|
|
7507
9124
|
item: Shared.ItemSlim;
|
|
7508
9125
|
|
|
7509
|
-
matrix_config: Shared.MatrixConfig;
|
|
7510
|
-
|
|
7511
9126
|
/**
|
|
7512
9127
|
* @deprecated
|
|
7513
9128
|
*/
|
|
@@ -7536,13 +9151,16 @@ export namespace Price {
|
|
|
7536
9151
|
*/
|
|
7537
9152
|
minimum_amount: string | null;
|
|
7538
9153
|
|
|
7539
|
-
|
|
9154
|
+
/**
|
|
9155
|
+
* The pricing model type
|
|
9156
|
+
*/
|
|
9157
|
+
model_type: 'bulk';
|
|
7540
9158
|
|
|
7541
9159
|
name: string;
|
|
7542
9160
|
|
|
7543
9161
|
plan_phase_order: number | null;
|
|
7544
9162
|
|
|
7545
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
9163
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
7546
9164
|
|
|
7547
9165
|
/**
|
|
7548
9166
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -7553,7 +9171,7 @@ export namespace Price {
|
|
|
7553
9171
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
7554
9172
|
}
|
|
7555
9173
|
|
|
7556
|
-
export interface
|
|
9174
|
+
export interface PackagePrice {
|
|
7557
9175
|
id: string;
|
|
7558
9176
|
|
|
7559
9177
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -7615,13 +9233,21 @@ export namespace Price {
|
|
|
7615
9233
|
*/
|
|
7616
9234
|
minimum_amount: string | null;
|
|
7617
9235
|
|
|
7618
|
-
|
|
9236
|
+
/**
|
|
9237
|
+
* The pricing model type
|
|
9238
|
+
*/
|
|
9239
|
+
model_type: 'package';
|
|
7619
9240
|
|
|
7620
9241
|
name: string;
|
|
7621
9242
|
|
|
9243
|
+
/**
|
|
9244
|
+
* Configuration for package pricing
|
|
9245
|
+
*/
|
|
9246
|
+
package_config: Shared.PackageConfig;
|
|
9247
|
+
|
|
7622
9248
|
plan_phase_order: number | null;
|
|
7623
9249
|
|
|
7624
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
9250
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
7625
9251
|
|
|
7626
9252
|
/**
|
|
7627
9253
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -7629,20 +9255,16 @@ export namespace Price {
|
|
|
7629
9255
|
*/
|
|
7630
9256
|
replaces_price_id: string | null;
|
|
7631
9257
|
|
|
7632
|
-
tiered_config: Shared.TieredConfig;
|
|
7633
|
-
|
|
7634
9258
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
7635
9259
|
}
|
|
7636
9260
|
|
|
7637
|
-
export interface
|
|
9261
|
+
export interface MatrixPrice {
|
|
7638
9262
|
id: string;
|
|
7639
9263
|
|
|
7640
9264
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
7641
9265
|
|
|
7642
9266
|
billing_cycle_configuration: Shared.BillingCycleConfiguration;
|
|
7643
9267
|
|
|
7644
|
-
bulk_config: Shared.BulkConfig;
|
|
7645
|
-
|
|
7646
9268
|
cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom';
|
|
7647
9269
|
|
|
7648
9270
|
composite_price_filters: Array<Shared.TransformPriceFilter> | null;
|
|
@@ -7670,6 +9292,11 @@ export namespace Price {
|
|
|
7670
9292
|
|
|
7671
9293
|
item: Shared.ItemSlim;
|
|
7672
9294
|
|
|
9295
|
+
/**
|
|
9296
|
+
* Configuration for matrix pricing
|
|
9297
|
+
*/
|
|
9298
|
+
matrix_config: Shared.MatrixConfig;
|
|
9299
|
+
|
|
7673
9300
|
/**
|
|
7674
9301
|
* @deprecated
|
|
7675
9302
|
*/
|
|
@@ -7698,13 +9325,16 @@ export namespace Price {
|
|
|
7698
9325
|
*/
|
|
7699
9326
|
minimum_amount: string | null;
|
|
7700
9327
|
|
|
7701
|
-
|
|
9328
|
+
/**
|
|
9329
|
+
* The pricing model type
|
|
9330
|
+
*/
|
|
9331
|
+
model_type: 'matrix';
|
|
7702
9332
|
|
|
7703
9333
|
name: string;
|
|
7704
9334
|
|
|
7705
9335
|
plan_phase_order: number | null;
|
|
7706
9336
|
|
|
7707
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
9337
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
7708
9338
|
|
|
7709
9339
|
/**
|
|
7710
9340
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -7777,13 +9407,16 @@ export namespace Price {
|
|
|
7777
9407
|
*/
|
|
7778
9408
|
minimum_amount: string | null;
|
|
7779
9409
|
|
|
9410
|
+
/**
|
|
9411
|
+
* The pricing model type
|
|
9412
|
+
*/
|
|
7780
9413
|
model_type: 'threshold_total_amount';
|
|
7781
9414
|
|
|
7782
9415
|
name: string;
|
|
7783
9416
|
|
|
7784
9417
|
plan_phase_order: number | null;
|
|
7785
9418
|
|
|
7786
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
9419
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
7787
9420
|
|
|
7788
9421
|
/**
|
|
7789
9422
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -7791,11 +9424,49 @@ export namespace Price {
|
|
|
7791
9424
|
*/
|
|
7792
9425
|
replaces_price_id: string | null;
|
|
7793
9426
|
|
|
7794
|
-
|
|
9427
|
+
/**
|
|
9428
|
+
* Configuration for threshold_total_amount pricing
|
|
9429
|
+
*/
|
|
9430
|
+
threshold_total_amount_config: ThresholdTotalAmountPrice.ThresholdTotalAmountConfig;
|
|
7795
9431
|
|
|
7796
9432
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
7797
9433
|
}
|
|
7798
9434
|
|
|
9435
|
+
export namespace ThresholdTotalAmountPrice {
|
|
9436
|
+
/**
|
|
9437
|
+
* Configuration for threshold_total_amount pricing
|
|
9438
|
+
*/
|
|
9439
|
+
export interface ThresholdTotalAmountConfig {
|
|
9440
|
+
/**
|
|
9441
|
+
* When the quantity consumed passes a provided threshold, the configured total
|
|
9442
|
+
* will be charged
|
|
9443
|
+
*/
|
|
9444
|
+
consumption_table: Array<ThresholdTotalAmountConfig.ConsumptionTable>;
|
|
9445
|
+
|
|
9446
|
+
/**
|
|
9447
|
+
* If true, the unit price will be prorated to the billing period
|
|
9448
|
+
*/
|
|
9449
|
+
prorate?: boolean | null;
|
|
9450
|
+
}
|
|
9451
|
+
|
|
9452
|
+
export namespace ThresholdTotalAmountConfig {
|
|
9453
|
+
/**
|
|
9454
|
+
* Configuration for a single threshold
|
|
9455
|
+
*/
|
|
9456
|
+
export interface ConsumptionTable {
|
|
9457
|
+
/**
|
|
9458
|
+
* Quantity threshold
|
|
9459
|
+
*/
|
|
9460
|
+
threshold: string;
|
|
9461
|
+
|
|
9462
|
+
/**
|
|
9463
|
+
* Total amount for this threshold
|
|
9464
|
+
*/
|
|
9465
|
+
total_amount: string;
|
|
9466
|
+
}
|
|
9467
|
+
}
|
|
9468
|
+
}
|
|
9469
|
+
|
|
7799
9470
|
export interface TieredPackagePrice {
|
|
7800
9471
|
id: string;
|
|
7801
9472
|
|
|
@@ -7858,13 +9529,16 @@ export namespace Price {
|
|
|
7858
9529
|
*/
|
|
7859
9530
|
minimum_amount: string | null;
|
|
7860
9531
|
|
|
9532
|
+
/**
|
|
9533
|
+
* The pricing model type
|
|
9534
|
+
*/
|
|
7861
9535
|
model_type: 'tiered_package';
|
|
7862
9536
|
|
|
7863
9537
|
name: string;
|
|
7864
9538
|
|
|
7865
9539
|
plan_phase_order: number | null;
|
|
7866
9540
|
|
|
7867
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
9541
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
7868
9542
|
|
|
7869
9543
|
/**
|
|
7870
9544
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -7872,12 +9546,50 @@ export namespace Price {
|
|
|
7872
9546
|
*/
|
|
7873
9547
|
replaces_price_id: string | null;
|
|
7874
9548
|
|
|
7875
|
-
|
|
9549
|
+
/**
|
|
9550
|
+
* Configuration for tiered_package pricing
|
|
9551
|
+
*/
|
|
9552
|
+
tiered_package_config: TieredPackagePrice.TieredPackageConfig;
|
|
7876
9553
|
|
|
7877
9554
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
7878
9555
|
}
|
|
7879
9556
|
|
|
7880
|
-
export
|
|
9557
|
+
export namespace TieredPackagePrice {
|
|
9558
|
+
/**
|
|
9559
|
+
* Configuration for tiered_package pricing
|
|
9560
|
+
*/
|
|
9561
|
+
export interface TieredPackageConfig {
|
|
9562
|
+
/**
|
|
9563
|
+
* Package size
|
|
9564
|
+
*/
|
|
9565
|
+
package_size: string;
|
|
9566
|
+
|
|
9567
|
+
/**
|
|
9568
|
+
* Apply tiered pricing after rounding up the quantity to the package size. Tiers
|
|
9569
|
+
* are defined using exclusive lower bounds.
|
|
9570
|
+
*/
|
|
9571
|
+
tiers: Array<TieredPackageConfig.Tier>;
|
|
9572
|
+
}
|
|
9573
|
+
|
|
9574
|
+
export namespace TieredPackageConfig {
|
|
9575
|
+
/**
|
|
9576
|
+
* Configuration for a single tier with business logic
|
|
9577
|
+
*/
|
|
9578
|
+
export interface Tier {
|
|
9579
|
+
/**
|
|
9580
|
+
* Price per package
|
|
9581
|
+
*/
|
|
9582
|
+
per_unit: string;
|
|
9583
|
+
|
|
9584
|
+
/**
|
|
9585
|
+
* Tier lower bound
|
|
9586
|
+
*/
|
|
9587
|
+
tier_lower_bound: string;
|
|
9588
|
+
}
|
|
9589
|
+
}
|
|
9590
|
+
}
|
|
9591
|
+
|
|
9592
|
+
export interface TieredWithMinimumPrice {
|
|
7881
9593
|
id: string;
|
|
7882
9594
|
|
|
7883
9595
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -7907,8 +9619,6 @@ export namespace Price {
|
|
|
7907
9619
|
|
|
7908
9620
|
fixed_price_quantity: number | null;
|
|
7909
9621
|
|
|
7910
|
-
grouped_tiered_config: { [key: string]: unknown };
|
|
7911
|
-
|
|
7912
9622
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
7913
9623
|
|
|
7914
9624
|
item: Shared.ItemSlim;
|
|
@@ -7941,13 +9651,16 @@ export namespace Price {
|
|
|
7941
9651
|
*/
|
|
7942
9652
|
minimum_amount: string | null;
|
|
7943
9653
|
|
|
7944
|
-
|
|
9654
|
+
/**
|
|
9655
|
+
* The pricing model type
|
|
9656
|
+
*/
|
|
9657
|
+
model_type: 'tiered_with_minimum';
|
|
7945
9658
|
|
|
7946
9659
|
name: string;
|
|
7947
9660
|
|
|
7948
9661
|
plan_phase_order: number | null;
|
|
7949
9662
|
|
|
7950
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
9663
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
7951
9664
|
|
|
7952
9665
|
/**
|
|
7953
9666
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -7955,13 +9668,63 @@ export namespace Price {
|
|
|
7955
9668
|
*/
|
|
7956
9669
|
replaces_price_id: string | null;
|
|
7957
9670
|
|
|
9671
|
+
/**
|
|
9672
|
+
* Configuration for tiered_with_minimum pricing
|
|
9673
|
+
*/
|
|
9674
|
+
tiered_with_minimum_config: TieredWithMinimumPrice.TieredWithMinimumConfig;
|
|
9675
|
+
|
|
7958
9676
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
7959
9677
|
}
|
|
7960
9678
|
|
|
7961
|
-
export
|
|
7962
|
-
|
|
9679
|
+
export namespace TieredWithMinimumPrice {
|
|
9680
|
+
/**
|
|
9681
|
+
* Configuration for tiered_with_minimum pricing
|
|
9682
|
+
*/
|
|
9683
|
+
export interface TieredWithMinimumConfig {
|
|
9684
|
+
/**
|
|
9685
|
+
* Tiered pricing with a minimum amount dependent on the volume tier. Tiers are
|
|
9686
|
+
* defined using exclusive lower bounds.
|
|
9687
|
+
*/
|
|
9688
|
+
tiers: Array<TieredWithMinimumConfig.Tier>;
|
|
7963
9689
|
|
|
7964
|
-
|
|
9690
|
+
/**
|
|
9691
|
+
* If true, tiers with an accrued amount of 0 will not be included in the rating.
|
|
9692
|
+
*/
|
|
9693
|
+
hide_zero_amount_tiers?: boolean;
|
|
9694
|
+
|
|
9695
|
+
/**
|
|
9696
|
+
* If true, the unit price will be prorated to the billing period
|
|
9697
|
+
*/
|
|
9698
|
+
prorate?: boolean;
|
|
9699
|
+
}
|
|
9700
|
+
|
|
9701
|
+
export namespace TieredWithMinimumConfig {
|
|
9702
|
+
/**
|
|
9703
|
+
* Configuration for a single tier
|
|
9704
|
+
*/
|
|
9705
|
+
export interface Tier {
|
|
9706
|
+
/**
|
|
9707
|
+
* Minimum amount
|
|
9708
|
+
*/
|
|
9709
|
+
minimum_amount: string;
|
|
9710
|
+
|
|
9711
|
+
/**
|
|
9712
|
+
* Tier lower bound
|
|
9713
|
+
*/
|
|
9714
|
+
tier_lower_bound: string;
|
|
9715
|
+
|
|
9716
|
+
/**
|
|
9717
|
+
* Per unit amount
|
|
9718
|
+
*/
|
|
9719
|
+
unit_amount: string;
|
|
9720
|
+
}
|
|
9721
|
+
}
|
|
9722
|
+
}
|
|
9723
|
+
|
|
9724
|
+
export interface GroupedTieredPrice {
|
|
9725
|
+
id: string;
|
|
9726
|
+
|
|
9727
|
+
billable_metric: Shared.BillableMetricTiny | null;
|
|
7965
9728
|
|
|
7966
9729
|
billing_cycle_configuration: Shared.BillingCycleConfiguration;
|
|
7967
9730
|
|
|
@@ -7988,6 +9751,11 @@ export namespace Price {
|
|
|
7988
9751
|
|
|
7989
9752
|
fixed_price_quantity: number | null;
|
|
7990
9753
|
|
|
9754
|
+
/**
|
|
9755
|
+
* Configuration for grouped_tiered pricing
|
|
9756
|
+
*/
|
|
9757
|
+
grouped_tiered_config: GroupedTieredPrice.GroupedTieredConfig;
|
|
9758
|
+
|
|
7991
9759
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
7992
9760
|
|
|
7993
9761
|
item: Shared.ItemSlim;
|
|
@@ -8020,13 +9788,16 @@ export namespace Price {
|
|
|
8020
9788
|
*/
|
|
8021
9789
|
minimum_amount: string | null;
|
|
8022
9790
|
|
|
8023
|
-
|
|
9791
|
+
/**
|
|
9792
|
+
* The pricing model type
|
|
9793
|
+
*/
|
|
9794
|
+
model_type: 'grouped_tiered';
|
|
8024
9795
|
|
|
8025
9796
|
name: string;
|
|
8026
9797
|
|
|
8027
9798
|
plan_phase_order: number | null;
|
|
8028
9799
|
|
|
8029
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
9800
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8030
9801
|
|
|
8031
9802
|
/**
|
|
8032
9803
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8034,11 +9805,44 @@ export namespace Price {
|
|
|
8034
9805
|
*/
|
|
8035
9806
|
replaces_price_id: string | null;
|
|
8036
9807
|
|
|
8037
|
-
tiered_with_minimum_config: { [key: string]: unknown };
|
|
8038
|
-
|
|
8039
9808
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8040
9809
|
}
|
|
8041
9810
|
|
|
9811
|
+
export namespace GroupedTieredPrice {
|
|
9812
|
+
/**
|
|
9813
|
+
* Configuration for grouped_tiered pricing
|
|
9814
|
+
*/
|
|
9815
|
+
export interface GroupedTieredConfig {
|
|
9816
|
+
/**
|
|
9817
|
+
* The billable metric property used to group before tiering
|
|
9818
|
+
*/
|
|
9819
|
+
grouping_key: string;
|
|
9820
|
+
|
|
9821
|
+
/**
|
|
9822
|
+
* Apply tiered pricing to each segment generated after grouping with the provided
|
|
9823
|
+
* key
|
|
9824
|
+
*/
|
|
9825
|
+
tiers: Array<GroupedTieredConfig.Tier>;
|
|
9826
|
+
}
|
|
9827
|
+
|
|
9828
|
+
export namespace GroupedTieredConfig {
|
|
9829
|
+
/**
|
|
9830
|
+
* Configuration for a single tier
|
|
9831
|
+
*/
|
|
9832
|
+
export interface Tier {
|
|
9833
|
+
/**
|
|
9834
|
+
* Tier lower bound
|
|
9835
|
+
*/
|
|
9836
|
+
tier_lower_bound: string;
|
|
9837
|
+
|
|
9838
|
+
/**
|
|
9839
|
+
* Per unit amount
|
|
9840
|
+
*/
|
|
9841
|
+
unit_amount: string;
|
|
9842
|
+
}
|
|
9843
|
+
}
|
|
9844
|
+
}
|
|
9845
|
+
|
|
8042
9846
|
export interface TieredPackageWithMinimumPrice {
|
|
8043
9847
|
id: string;
|
|
8044
9848
|
|
|
@@ -8101,13 +9905,16 @@ export namespace Price {
|
|
|
8101
9905
|
*/
|
|
8102
9906
|
minimum_amount: string | null;
|
|
8103
9907
|
|
|
9908
|
+
/**
|
|
9909
|
+
* The pricing model type
|
|
9910
|
+
*/
|
|
8104
9911
|
model_type: 'tiered_package_with_minimum';
|
|
8105
9912
|
|
|
8106
9913
|
name: string;
|
|
8107
9914
|
|
|
8108
9915
|
plan_phase_order: number | null;
|
|
8109
9916
|
|
|
8110
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
9917
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8111
9918
|
|
|
8112
9919
|
/**
|
|
8113
9920
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8115,11 +9922,54 @@ export namespace Price {
|
|
|
8115
9922
|
*/
|
|
8116
9923
|
replaces_price_id: string | null;
|
|
8117
9924
|
|
|
8118
|
-
|
|
9925
|
+
/**
|
|
9926
|
+
* Configuration for tiered_package_with_minimum pricing
|
|
9927
|
+
*/
|
|
9928
|
+
tiered_package_with_minimum_config: TieredPackageWithMinimumPrice.TieredPackageWithMinimumConfig;
|
|
8119
9929
|
|
|
8120
9930
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8121
9931
|
}
|
|
8122
9932
|
|
|
9933
|
+
export namespace TieredPackageWithMinimumPrice {
|
|
9934
|
+
/**
|
|
9935
|
+
* Configuration for tiered_package_with_minimum pricing
|
|
9936
|
+
*/
|
|
9937
|
+
export interface TieredPackageWithMinimumConfig {
|
|
9938
|
+
/**
|
|
9939
|
+
* Package size
|
|
9940
|
+
*/
|
|
9941
|
+
package_size: number;
|
|
9942
|
+
|
|
9943
|
+
/**
|
|
9944
|
+
* Apply tiered pricing after rounding up the quantity to the package size. Tiers
|
|
9945
|
+
* are defined using exclusive lower bounds.
|
|
9946
|
+
*/
|
|
9947
|
+
tiers: Array<TieredPackageWithMinimumConfig.Tier>;
|
|
9948
|
+
}
|
|
9949
|
+
|
|
9950
|
+
export namespace TieredPackageWithMinimumConfig {
|
|
9951
|
+
/**
|
|
9952
|
+
* Configuration for a single tier
|
|
9953
|
+
*/
|
|
9954
|
+
export interface Tier {
|
|
9955
|
+
/**
|
|
9956
|
+
* Minimum amount
|
|
9957
|
+
*/
|
|
9958
|
+
minimum_amount: string;
|
|
9959
|
+
|
|
9960
|
+
/**
|
|
9961
|
+
* Price per package
|
|
9962
|
+
*/
|
|
9963
|
+
per_unit: string;
|
|
9964
|
+
|
|
9965
|
+
/**
|
|
9966
|
+
* Tier lower bound
|
|
9967
|
+
*/
|
|
9968
|
+
tier_lower_bound: string;
|
|
9969
|
+
}
|
|
9970
|
+
}
|
|
9971
|
+
}
|
|
9972
|
+
|
|
8123
9973
|
export interface PackageWithAllocationPrice {
|
|
8124
9974
|
id: string;
|
|
8125
9975
|
|
|
@@ -8182,15 +10032,21 @@ export namespace Price {
|
|
|
8182
10032
|
*/
|
|
8183
10033
|
minimum_amount: string | null;
|
|
8184
10034
|
|
|
10035
|
+
/**
|
|
10036
|
+
* The pricing model type
|
|
10037
|
+
*/
|
|
8185
10038
|
model_type: 'package_with_allocation';
|
|
8186
10039
|
|
|
8187
10040
|
name: string;
|
|
8188
10041
|
|
|
8189
|
-
|
|
10042
|
+
/**
|
|
10043
|
+
* Configuration for package_with_allocation pricing
|
|
10044
|
+
*/
|
|
10045
|
+
package_with_allocation_config: PackageWithAllocationPrice.PackageWithAllocationConfig;
|
|
8190
10046
|
|
|
8191
10047
|
plan_phase_order: number | null;
|
|
8192
10048
|
|
|
8193
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
10049
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8194
10050
|
|
|
8195
10051
|
/**
|
|
8196
10052
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8201,6 +10057,28 @@ export namespace Price {
|
|
|
8201
10057
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8202
10058
|
}
|
|
8203
10059
|
|
|
10060
|
+
export namespace PackageWithAllocationPrice {
|
|
10061
|
+
/**
|
|
10062
|
+
* Configuration for package_with_allocation pricing
|
|
10063
|
+
*/
|
|
10064
|
+
export interface PackageWithAllocationConfig {
|
|
10065
|
+
/**
|
|
10066
|
+
* Usage allocation
|
|
10067
|
+
*/
|
|
10068
|
+
allocation: string;
|
|
10069
|
+
|
|
10070
|
+
/**
|
|
10071
|
+
* Price per package
|
|
10072
|
+
*/
|
|
10073
|
+
package_amount: string;
|
|
10074
|
+
|
|
10075
|
+
/**
|
|
10076
|
+
* Package size
|
|
10077
|
+
*/
|
|
10078
|
+
package_size: string;
|
|
10079
|
+
}
|
|
10080
|
+
}
|
|
10081
|
+
|
|
8204
10082
|
export interface UnitWithPercentPrice {
|
|
8205
10083
|
id: string;
|
|
8206
10084
|
|
|
@@ -8263,13 +10141,16 @@ export namespace Price {
|
|
|
8263
10141
|
*/
|
|
8264
10142
|
minimum_amount: string | null;
|
|
8265
10143
|
|
|
10144
|
+
/**
|
|
10145
|
+
* The pricing model type
|
|
10146
|
+
*/
|
|
8266
10147
|
model_type: 'unit_with_percent';
|
|
8267
10148
|
|
|
8268
10149
|
name: string;
|
|
8269
10150
|
|
|
8270
10151
|
plan_phase_order: number | null;
|
|
8271
10152
|
|
|
8272
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
10153
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8273
10154
|
|
|
8274
10155
|
/**
|
|
8275
10156
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8277,11 +10158,31 @@ export namespace Price {
|
|
|
8277
10158
|
*/
|
|
8278
10159
|
replaces_price_id: string | null;
|
|
8279
10160
|
|
|
8280
|
-
|
|
10161
|
+
/**
|
|
10162
|
+
* Configuration for unit_with_percent pricing
|
|
10163
|
+
*/
|
|
10164
|
+
unit_with_percent_config: UnitWithPercentPrice.UnitWithPercentConfig;
|
|
8281
10165
|
|
|
8282
10166
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8283
10167
|
}
|
|
8284
10168
|
|
|
10169
|
+
export namespace UnitWithPercentPrice {
|
|
10170
|
+
/**
|
|
10171
|
+
* Configuration for unit_with_percent pricing
|
|
10172
|
+
*/
|
|
10173
|
+
export interface UnitWithPercentConfig {
|
|
10174
|
+
/**
|
|
10175
|
+
* What percent, out of 100, of the calculated total to charge
|
|
10176
|
+
*/
|
|
10177
|
+
percent: string;
|
|
10178
|
+
|
|
10179
|
+
/**
|
|
10180
|
+
* Rate per unit of usage
|
|
10181
|
+
*/
|
|
10182
|
+
unit_amount: string;
|
|
10183
|
+
}
|
|
10184
|
+
}
|
|
10185
|
+
|
|
8285
10186
|
export interface MatrixWithAllocationPrice {
|
|
8286
10187
|
id: string;
|
|
8287
10188
|
|
|
@@ -8316,6 +10217,9 @@ export namespace Price {
|
|
|
8316
10217
|
|
|
8317
10218
|
item: Shared.ItemSlim;
|
|
8318
10219
|
|
|
10220
|
+
/**
|
|
10221
|
+
* Configuration for matrix_with_allocation pricing
|
|
10222
|
+
*/
|
|
8319
10223
|
matrix_with_allocation_config: Shared.MatrixWithAllocationConfig;
|
|
8320
10224
|
|
|
8321
10225
|
/**
|
|
@@ -8346,13 +10250,16 @@ export namespace Price {
|
|
|
8346
10250
|
*/
|
|
8347
10251
|
minimum_amount: string | null;
|
|
8348
10252
|
|
|
10253
|
+
/**
|
|
10254
|
+
* The pricing model type
|
|
10255
|
+
*/
|
|
8349
10256
|
model_type: 'matrix_with_allocation';
|
|
8350
10257
|
|
|
8351
10258
|
name: string;
|
|
8352
10259
|
|
|
8353
10260
|
plan_phase_order: number | null;
|
|
8354
10261
|
|
|
8355
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
10262
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8356
10263
|
|
|
8357
10264
|
/**
|
|
8358
10265
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8425,13 +10332,16 @@ export namespace Price {
|
|
|
8425
10332
|
*/
|
|
8426
10333
|
minimum_amount: string | null;
|
|
8427
10334
|
|
|
10335
|
+
/**
|
|
10336
|
+
* The pricing model type
|
|
10337
|
+
*/
|
|
8428
10338
|
model_type: 'tiered_with_proration';
|
|
8429
10339
|
|
|
8430
10340
|
name: string;
|
|
8431
10341
|
|
|
8432
10342
|
plan_phase_order: number | null;
|
|
8433
10343
|
|
|
8434
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
10344
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8435
10345
|
|
|
8436
10346
|
/**
|
|
8437
10347
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8439,11 +10349,44 @@ export namespace Price {
|
|
|
8439
10349
|
*/
|
|
8440
10350
|
replaces_price_id: string | null;
|
|
8441
10351
|
|
|
8442
|
-
|
|
10352
|
+
/**
|
|
10353
|
+
* Configuration for tiered_with_proration pricing
|
|
10354
|
+
*/
|
|
10355
|
+
tiered_with_proration_config: TieredWithProrationPrice.TieredWithProrationConfig;
|
|
8443
10356
|
|
|
8444
10357
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8445
10358
|
}
|
|
8446
10359
|
|
|
10360
|
+
export namespace TieredWithProrationPrice {
|
|
10361
|
+
/**
|
|
10362
|
+
* Configuration for tiered_with_proration pricing
|
|
10363
|
+
*/
|
|
10364
|
+
export interface TieredWithProrationConfig {
|
|
10365
|
+
/**
|
|
10366
|
+
* Tiers for rating based on total usage quantities into the specified tier with
|
|
10367
|
+
* proration
|
|
10368
|
+
*/
|
|
10369
|
+
tiers: Array<TieredWithProrationConfig.Tier>;
|
|
10370
|
+
}
|
|
10371
|
+
|
|
10372
|
+
export namespace TieredWithProrationConfig {
|
|
10373
|
+
/**
|
|
10374
|
+
* Configuration for a single tiered with proration tier
|
|
10375
|
+
*/
|
|
10376
|
+
export interface Tier {
|
|
10377
|
+
/**
|
|
10378
|
+
* Inclusive tier starting value
|
|
10379
|
+
*/
|
|
10380
|
+
tier_lower_bound: string;
|
|
10381
|
+
|
|
10382
|
+
/**
|
|
10383
|
+
* Amount per unit
|
|
10384
|
+
*/
|
|
10385
|
+
unit_amount: string;
|
|
10386
|
+
}
|
|
10387
|
+
}
|
|
10388
|
+
}
|
|
10389
|
+
|
|
8447
10390
|
export interface UnitWithProrationPrice {
|
|
8448
10391
|
id: string;
|
|
8449
10392
|
|
|
@@ -8506,13 +10449,16 @@ export namespace Price {
|
|
|
8506
10449
|
*/
|
|
8507
10450
|
minimum_amount: string | null;
|
|
8508
10451
|
|
|
10452
|
+
/**
|
|
10453
|
+
* The pricing model type
|
|
10454
|
+
*/
|
|
8509
10455
|
model_type: 'unit_with_proration';
|
|
8510
10456
|
|
|
8511
10457
|
name: string;
|
|
8512
10458
|
|
|
8513
10459
|
plan_phase_order: number | null;
|
|
8514
10460
|
|
|
8515
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
10461
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8516
10462
|
|
|
8517
10463
|
/**
|
|
8518
10464
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8520,11 +10466,26 @@ export namespace Price {
|
|
|
8520
10466
|
*/
|
|
8521
10467
|
replaces_price_id: string | null;
|
|
8522
10468
|
|
|
8523
|
-
|
|
10469
|
+
/**
|
|
10470
|
+
* Configuration for unit_with_proration pricing
|
|
10471
|
+
*/
|
|
10472
|
+
unit_with_proration_config: UnitWithProrationPrice.UnitWithProrationConfig;
|
|
8524
10473
|
|
|
8525
10474
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8526
10475
|
}
|
|
8527
10476
|
|
|
10477
|
+
export namespace UnitWithProrationPrice {
|
|
10478
|
+
/**
|
|
10479
|
+
* Configuration for unit_with_proration pricing
|
|
10480
|
+
*/
|
|
10481
|
+
export interface UnitWithProrationConfig {
|
|
10482
|
+
/**
|
|
10483
|
+
* Rate per unit of usage
|
|
10484
|
+
*/
|
|
10485
|
+
unit_amount: string;
|
|
10486
|
+
}
|
|
10487
|
+
}
|
|
10488
|
+
|
|
8528
10489
|
export interface GroupedAllocationPrice {
|
|
8529
10490
|
id: string;
|
|
8530
10491
|
|
|
@@ -8555,7 +10516,10 @@ export namespace Price {
|
|
|
8555
10516
|
|
|
8556
10517
|
fixed_price_quantity: number | null;
|
|
8557
10518
|
|
|
8558
|
-
|
|
10519
|
+
/**
|
|
10520
|
+
* Configuration for grouped_allocation pricing
|
|
10521
|
+
*/
|
|
10522
|
+
grouped_allocation_config: GroupedAllocationPrice.GroupedAllocationConfig;
|
|
8559
10523
|
|
|
8560
10524
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
8561
10525
|
|
|
@@ -8589,13 +10553,16 @@ export namespace Price {
|
|
|
8589
10553
|
*/
|
|
8590
10554
|
minimum_amount: string | null;
|
|
8591
10555
|
|
|
10556
|
+
/**
|
|
10557
|
+
* The pricing model type
|
|
10558
|
+
*/
|
|
8592
10559
|
model_type: 'grouped_allocation';
|
|
8593
10560
|
|
|
8594
10561
|
name: string;
|
|
8595
10562
|
|
|
8596
10563
|
plan_phase_order: number | null;
|
|
8597
10564
|
|
|
8598
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
10565
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8599
10566
|
|
|
8600
10567
|
/**
|
|
8601
10568
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8606,13 +10573,40 @@ export namespace Price {
|
|
|
8606
10573
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8607
10574
|
}
|
|
8608
10575
|
|
|
8609
|
-
export
|
|
10576
|
+
export namespace GroupedAllocationPrice {
|
|
10577
|
+
/**
|
|
10578
|
+
* Configuration for grouped_allocation pricing
|
|
10579
|
+
*/
|
|
10580
|
+
export interface GroupedAllocationConfig {
|
|
10581
|
+
/**
|
|
10582
|
+
* Usage allocation per group
|
|
10583
|
+
*/
|
|
10584
|
+
allocation: string;
|
|
10585
|
+
|
|
10586
|
+
/**
|
|
10587
|
+
* How to determine the groups that should each be allocated some quantity
|
|
10588
|
+
*/
|
|
10589
|
+
grouping_key: string;
|
|
10590
|
+
|
|
10591
|
+
/**
|
|
10592
|
+
* Unit rate for post-allocation
|
|
10593
|
+
*/
|
|
10594
|
+
overage_unit_rate: string;
|
|
10595
|
+
}
|
|
10596
|
+
}
|
|
10597
|
+
|
|
10598
|
+
export interface BulkWithProrationPrice {
|
|
8610
10599
|
id: string;
|
|
8611
10600
|
|
|
8612
10601
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
8613
10602
|
|
|
8614
10603
|
billing_cycle_configuration: Shared.BillingCycleConfiguration;
|
|
8615
10604
|
|
|
10605
|
+
/**
|
|
10606
|
+
* Configuration for bulk_with_proration pricing
|
|
10607
|
+
*/
|
|
10608
|
+
bulk_with_proration_config: BulkWithProrationPrice.BulkWithProrationConfig;
|
|
10609
|
+
|
|
8616
10610
|
cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom';
|
|
8617
10611
|
|
|
8618
10612
|
composite_price_filters: Array<Shared.TransformPriceFilter> | null;
|
|
@@ -8636,8 +10630,6 @@ export namespace Price {
|
|
|
8636
10630
|
|
|
8637
10631
|
fixed_price_quantity: number | null;
|
|
8638
10632
|
|
|
8639
|
-
grouped_with_prorated_minimum_config: { [key: string]: unknown };
|
|
8640
|
-
|
|
8641
10633
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
8642
10634
|
|
|
8643
10635
|
item: Shared.ItemSlim;
|
|
@@ -8670,13 +10662,16 @@ export namespace Price {
|
|
|
8670
10662
|
*/
|
|
8671
10663
|
minimum_amount: string | null;
|
|
8672
10664
|
|
|
8673
|
-
|
|
10665
|
+
/**
|
|
10666
|
+
* The pricing model type
|
|
10667
|
+
*/
|
|
10668
|
+
model_type: 'bulk_with_proration';
|
|
8674
10669
|
|
|
8675
10670
|
name: string;
|
|
8676
10671
|
|
|
8677
10672
|
plan_phase_order: number | null;
|
|
8678
10673
|
|
|
8679
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
10674
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8680
10675
|
|
|
8681
10676
|
/**
|
|
8682
10677
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8687,7 +10682,36 @@ export namespace Price {
|
|
|
8687
10682
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8688
10683
|
}
|
|
8689
10684
|
|
|
8690
|
-
export
|
|
10685
|
+
export namespace BulkWithProrationPrice {
|
|
10686
|
+
/**
|
|
10687
|
+
* Configuration for bulk_with_proration pricing
|
|
10688
|
+
*/
|
|
10689
|
+
export interface BulkWithProrationConfig {
|
|
10690
|
+
/**
|
|
10691
|
+
* Bulk tiers for rating based on total usage volume
|
|
10692
|
+
*/
|
|
10693
|
+
tiers: Array<BulkWithProrationConfig.Tier>;
|
|
10694
|
+
}
|
|
10695
|
+
|
|
10696
|
+
export namespace BulkWithProrationConfig {
|
|
10697
|
+
/**
|
|
10698
|
+
* Configuration for a single bulk pricing tier with proration
|
|
10699
|
+
*/
|
|
10700
|
+
export interface Tier {
|
|
10701
|
+
/**
|
|
10702
|
+
* Cost per unit
|
|
10703
|
+
*/
|
|
10704
|
+
unit_amount: string;
|
|
10705
|
+
|
|
10706
|
+
/**
|
|
10707
|
+
* The lower bound for this tier
|
|
10708
|
+
*/
|
|
10709
|
+
tier_lower_bound?: string | null;
|
|
10710
|
+
}
|
|
10711
|
+
}
|
|
10712
|
+
}
|
|
10713
|
+
|
|
10714
|
+
export interface GroupedWithProratedMinimumPrice {
|
|
8691
10715
|
id: string;
|
|
8692
10716
|
|
|
8693
10717
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -8717,7 +10741,10 @@ export namespace Price {
|
|
|
8717
10741
|
|
|
8718
10742
|
fixed_price_quantity: number | null;
|
|
8719
10743
|
|
|
8720
|
-
|
|
10744
|
+
/**
|
|
10745
|
+
* Configuration for grouped_with_prorated_minimum pricing
|
|
10746
|
+
*/
|
|
10747
|
+
grouped_with_prorated_minimum_config: GroupedWithProratedMinimumPrice.GroupedWithProratedMinimumConfig;
|
|
8721
10748
|
|
|
8722
10749
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
8723
10750
|
|
|
@@ -8751,13 +10778,16 @@ export namespace Price {
|
|
|
8751
10778
|
*/
|
|
8752
10779
|
minimum_amount: string | null;
|
|
8753
10780
|
|
|
8754
|
-
|
|
10781
|
+
/**
|
|
10782
|
+
* The pricing model type
|
|
10783
|
+
*/
|
|
10784
|
+
model_type: 'grouped_with_prorated_minimum';
|
|
8755
10785
|
|
|
8756
10786
|
name: string;
|
|
8757
10787
|
|
|
8758
10788
|
plan_phase_order: number | null;
|
|
8759
10789
|
|
|
8760
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
10790
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8761
10791
|
|
|
8762
10792
|
/**
|
|
8763
10793
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8768,7 +10798,29 @@ export namespace Price {
|
|
|
8768
10798
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8769
10799
|
}
|
|
8770
10800
|
|
|
8771
|
-
export
|
|
10801
|
+
export namespace GroupedWithProratedMinimumPrice {
|
|
10802
|
+
/**
|
|
10803
|
+
* Configuration for grouped_with_prorated_minimum pricing
|
|
10804
|
+
*/
|
|
10805
|
+
export interface GroupedWithProratedMinimumConfig {
|
|
10806
|
+
/**
|
|
10807
|
+
* How to determine the groups that should each have a minimum
|
|
10808
|
+
*/
|
|
10809
|
+
grouping_key: string;
|
|
10810
|
+
|
|
10811
|
+
/**
|
|
10812
|
+
* The minimum amount to charge per group
|
|
10813
|
+
*/
|
|
10814
|
+
minimum: string;
|
|
10815
|
+
|
|
10816
|
+
/**
|
|
10817
|
+
* The amount to charge per unit
|
|
10818
|
+
*/
|
|
10819
|
+
unit_rate: string;
|
|
10820
|
+
}
|
|
10821
|
+
}
|
|
10822
|
+
|
|
10823
|
+
export interface GroupedWithMeteredMinimumPrice {
|
|
8772
10824
|
id: string;
|
|
8773
10825
|
|
|
8774
10826
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -8798,12 +10850,15 @@ export namespace Price {
|
|
|
8798
10850
|
|
|
8799
10851
|
fixed_price_quantity: number | null;
|
|
8800
10852
|
|
|
10853
|
+
/**
|
|
10854
|
+
* Configuration for grouped_with_metered_minimum pricing
|
|
10855
|
+
*/
|
|
10856
|
+
grouped_with_metered_minimum_config: GroupedWithMeteredMinimumPrice.GroupedWithMeteredMinimumConfig;
|
|
10857
|
+
|
|
8801
10858
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
8802
10859
|
|
|
8803
10860
|
item: Shared.ItemSlim;
|
|
8804
10861
|
|
|
8805
|
-
matrix_with_display_name_config: { [key: string]: unknown };
|
|
8806
|
-
|
|
8807
10862
|
/**
|
|
8808
10863
|
* @deprecated
|
|
8809
10864
|
*/
|
|
@@ -8832,13 +10887,16 @@ export namespace Price {
|
|
|
8832
10887
|
*/
|
|
8833
10888
|
minimum_amount: string | null;
|
|
8834
10889
|
|
|
8835
|
-
|
|
10890
|
+
/**
|
|
10891
|
+
* The pricing model type
|
|
10892
|
+
*/
|
|
10893
|
+
model_type: 'grouped_with_metered_minimum';
|
|
8836
10894
|
|
|
8837
10895
|
name: string;
|
|
8838
10896
|
|
|
8839
10897
|
plan_phase_order: number | null;
|
|
8840
10898
|
|
|
8841
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
10899
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8842
10900
|
|
|
8843
10901
|
/**
|
|
8844
10902
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8849,15 +10907,84 @@ export namespace Price {
|
|
|
8849
10907
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8850
10908
|
}
|
|
8851
10909
|
|
|
8852
|
-
export
|
|
10910
|
+
export namespace GroupedWithMeteredMinimumPrice {
|
|
10911
|
+
/**
|
|
10912
|
+
* Configuration for grouped_with_metered_minimum pricing
|
|
10913
|
+
*/
|
|
10914
|
+
export interface GroupedWithMeteredMinimumConfig {
|
|
10915
|
+
/**
|
|
10916
|
+
* Used to partition the usage into groups. The minimum amount is applied to each
|
|
10917
|
+
* group.
|
|
10918
|
+
*/
|
|
10919
|
+
grouping_key: string;
|
|
10920
|
+
|
|
10921
|
+
/**
|
|
10922
|
+
* The minimum amount to charge per group per unit
|
|
10923
|
+
*/
|
|
10924
|
+
minimum_unit_amount: string;
|
|
10925
|
+
|
|
10926
|
+
/**
|
|
10927
|
+
* Used to determine the unit rate
|
|
10928
|
+
*/
|
|
10929
|
+
pricing_key: string;
|
|
10930
|
+
|
|
10931
|
+
/**
|
|
10932
|
+
* Scale the unit rates by the scaling factor.
|
|
10933
|
+
*/
|
|
10934
|
+
scaling_factors: Array<GroupedWithMeteredMinimumConfig.ScalingFactor>;
|
|
10935
|
+
|
|
10936
|
+
/**
|
|
10937
|
+
* Used to determine the unit rate scaling factor
|
|
10938
|
+
*/
|
|
10939
|
+
scaling_key: string;
|
|
10940
|
+
|
|
10941
|
+
/**
|
|
10942
|
+
* Apply per unit pricing to each pricing value. The minimum amount is applied any
|
|
10943
|
+
* unmatched usage.
|
|
10944
|
+
*/
|
|
10945
|
+
unit_amounts: Array<GroupedWithMeteredMinimumConfig.UnitAmount>;
|
|
10946
|
+
}
|
|
10947
|
+
|
|
10948
|
+
export namespace GroupedWithMeteredMinimumConfig {
|
|
10949
|
+
/**
|
|
10950
|
+
* Configuration for a scaling factor
|
|
10951
|
+
*/
|
|
10952
|
+
export interface ScalingFactor {
|
|
10953
|
+
/**
|
|
10954
|
+
* Scaling factor
|
|
10955
|
+
*/
|
|
10956
|
+
scaling_factor: string;
|
|
10957
|
+
|
|
10958
|
+
/**
|
|
10959
|
+
* Scaling value
|
|
10960
|
+
*/
|
|
10961
|
+
scaling_value: string;
|
|
10962
|
+
}
|
|
10963
|
+
|
|
10964
|
+
/**
|
|
10965
|
+
* Configuration for a unit amount
|
|
10966
|
+
*/
|
|
10967
|
+
export interface UnitAmount {
|
|
10968
|
+
/**
|
|
10969
|
+
* Pricing value
|
|
10970
|
+
*/
|
|
10971
|
+
pricing_value: string;
|
|
10972
|
+
|
|
10973
|
+
/**
|
|
10974
|
+
* Per unit amount
|
|
10975
|
+
*/
|
|
10976
|
+
unit_amount: string;
|
|
10977
|
+
}
|
|
10978
|
+
}
|
|
10979
|
+
}
|
|
10980
|
+
|
|
10981
|
+
export interface GroupedWithMinMaxThresholdsPrice {
|
|
8853
10982
|
id: string;
|
|
8854
10983
|
|
|
8855
10984
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
8856
10985
|
|
|
8857
10986
|
billing_cycle_configuration: Shared.BillingCycleConfiguration;
|
|
8858
10987
|
|
|
8859
|
-
bulk_with_proration_config: { [key: string]: unknown };
|
|
8860
|
-
|
|
8861
10988
|
cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom';
|
|
8862
10989
|
|
|
8863
10990
|
composite_price_filters: Array<Shared.TransformPriceFilter> | null;
|
|
@@ -8881,6 +11008,11 @@ export namespace Price {
|
|
|
8881
11008
|
|
|
8882
11009
|
fixed_price_quantity: number | null;
|
|
8883
11010
|
|
|
11011
|
+
/**
|
|
11012
|
+
* Configuration for grouped_with_min_max_thresholds pricing
|
|
11013
|
+
*/
|
|
11014
|
+
grouped_with_min_max_thresholds_config: GroupedWithMinMaxThresholdsPrice.GroupedWithMinMaxThresholdsConfig;
|
|
11015
|
+
|
|
8884
11016
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
8885
11017
|
|
|
8886
11018
|
item: Shared.ItemSlim;
|
|
@@ -8913,13 +11045,16 @@ export namespace Price {
|
|
|
8913
11045
|
*/
|
|
8914
11046
|
minimum_amount: string | null;
|
|
8915
11047
|
|
|
8916
|
-
|
|
11048
|
+
/**
|
|
11049
|
+
* The pricing model type
|
|
11050
|
+
*/
|
|
11051
|
+
model_type: 'grouped_with_min_max_thresholds';
|
|
8917
11052
|
|
|
8918
11053
|
name: string;
|
|
8919
11054
|
|
|
8920
11055
|
plan_phase_order: number | null;
|
|
8921
11056
|
|
|
8922
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
11057
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
8923
11058
|
|
|
8924
11059
|
/**
|
|
8925
11060
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -8930,7 +11065,34 @@ export namespace Price {
|
|
|
8930
11065
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
8931
11066
|
}
|
|
8932
11067
|
|
|
8933
|
-
export
|
|
11068
|
+
export namespace GroupedWithMinMaxThresholdsPrice {
|
|
11069
|
+
/**
|
|
11070
|
+
* Configuration for grouped_with_min_max_thresholds pricing
|
|
11071
|
+
*/
|
|
11072
|
+
export interface GroupedWithMinMaxThresholdsConfig {
|
|
11073
|
+
/**
|
|
11074
|
+
* The event property used to group before applying thresholds
|
|
11075
|
+
*/
|
|
11076
|
+
grouping_key: string;
|
|
11077
|
+
|
|
11078
|
+
/**
|
|
11079
|
+
* The maximum amount to charge each group
|
|
11080
|
+
*/
|
|
11081
|
+
maximum_charge: string;
|
|
11082
|
+
|
|
11083
|
+
/**
|
|
11084
|
+
* The minimum amount to charge each group, regardless of usage
|
|
11085
|
+
*/
|
|
11086
|
+
minimum_charge: string;
|
|
11087
|
+
|
|
11088
|
+
/**
|
|
11089
|
+
* The base price charged per group
|
|
11090
|
+
*/
|
|
11091
|
+
per_unit_rate: string;
|
|
11092
|
+
}
|
|
11093
|
+
}
|
|
11094
|
+
|
|
11095
|
+
export interface MatrixWithDisplayNamePrice {
|
|
8934
11096
|
id: string;
|
|
8935
11097
|
|
|
8936
11098
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -8960,12 +11122,15 @@ export namespace Price {
|
|
|
8960
11122
|
|
|
8961
11123
|
fixed_price_quantity: number | null;
|
|
8962
11124
|
|
|
8963
|
-
grouped_tiered_package_config: { [key: string]: unknown };
|
|
8964
|
-
|
|
8965
11125
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
8966
11126
|
|
|
8967
11127
|
item: Shared.ItemSlim;
|
|
8968
11128
|
|
|
11129
|
+
/**
|
|
11130
|
+
* Configuration for matrix_with_display_name pricing
|
|
11131
|
+
*/
|
|
11132
|
+
matrix_with_display_name_config: MatrixWithDisplayNamePrice.MatrixWithDisplayNameConfig;
|
|
11133
|
+
|
|
8969
11134
|
/**
|
|
8970
11135
|
* @deprecated
|
|
8971
11136
|
*/
|
|
@@ -8994,13 +11159,16 @@ export namespace Price {
|
|
|
8994
11159
|
*/
|
|
8995
11160
|
minimum_amount: string | null;
|
|
8996
11161
|
|
|
8997
|
-
|
|
11162
|
+
/**
|
|
11163
|
+
* The pricing model type
|
|
11164
|
+
*/
|
|
11165
|
+
model_type: 'matrix_with_display_name';
|
|
8998
11166
|
|
|
8999
11167
|
name: string;
|
|
9000
11168
|
|
|
9001
11169
|
plan_phase_order: number | null;
|
|
9002
11170
|
|
|
9003
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
11171
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
9004
11172
|
|
|
9005
11173
|
/**
|
|
9006
11174
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -9011,7 +11179,46 @@ export namespace Price {
|
|
|
9011
11179
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
9012
11180
|
}
|
|
9013
11181
|
|
|
9014
|
-
export
|
|
11182
|
+
export namespace MatrixWithDisplayNamePrice {
|
|
11183
|
+
/**
|
|
11184
|
+
* Configuration for matrix_with_display_name pricing
|
|
11185
|
+
*/
|
|
11186
|
+
export interface MatrixWithDisplayNameConfig {
|
|
11187
|
+
/**
|
|
11188
|
+
* Used to determine the unit rate
|
|
11189
|
+
*/
|
|
11190
|
+
dimension: string;
|
|
11191
|
+
|
|
11192
|
+
/**
|
|
11193
|
+
* Apply per unit pricing to each dimension value
|
|
11194
|
+
*/
|
|
11195
|
+
unit_amounts: Array<MatrixWithDisplayNameConfig.UnitAmount>;
|
|
11196
|
+
}
|
|
11197
|
+
|
|
11198
|
+
export namespace MatrixWithDisplayNameConfig {
|
|
11199
|
+
/**
|
|
11200
|
+
* Configuration for a unit amount item
|
|
11201
|
+
*/
|
|
11202
|
+
export interface UnitAmount {
|
|
11203
|
+
/**
|
|
11204
|
+
* The dimension value
|
|
11205
|
+
*/
|
|
11206
|
+
dimension_value: string;
|
|
11207
|
+
|
|
11208
|
+
/**
|
|
11209
|
+
* Display name for this dimension value
|
|
11210
|
+
*/
|
|
11211
|
+
display_name: string;
|
|
11212
|
+
|
|
11213
|
+
/**
|
|
11214
|
+
* Per unit amount
|
|
11215
|
+
*/
|
|
11216
|
+
unit_amount: string;
|
|
11217
|
+
}
|
|
11218
|
+
}
|
|
11219
|
+
}
|
|
11220
|
+
|
|
11221
|
+
export interface GroupedTieredPackagePrice {
|
|
9015
11222
|
id: string;
|
|
9016
11223
|
|
|
9017
11224
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -9041,12 +11248,15 @@ export namespace Price {
|
|
|
9041
11248
|
|
|
9042
11249
|
fixed_price_quantity: number | null;
|
|
9043
11250
|
|
|
11251
|
+
/**
|
|
11252
|
+
* Configuration for grouped_tiered_package pricing
|
|
11253
|
+
*/
|
|
11254
|
+
grouped_tiered_package_config: GroupedTieredPackagePrice.GroupedTieredPackageConfig;
|
|
11255
|
+
|
|
9044
11256
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
9045
11257
|
|
|
9046
11258
|
item: Shared.ItemSlim;
|
|
9047
11259
|
|
|
9048
|
-
max_group_tiered_package_config: { [key: string]: unknown };
|
|
9049
|
-
|
|
9050
11260
|
/**
|
|
9051
11261
|
* @deprecated
|
|
9052
11262
|
*/
|
|
@@ -9075,13 +11285,16 @@ export namespace Price {
|
|
|
9075
11285
|
*/
|
|
9076
11286
|
minimum_amount: string | null;
|
|
9077
11287
|
|
|
9078
|
-
|
|
11288
|
+
/**
|
|
11289
|
+
* The pricing model type
|
|
11290
|
+
*/
|
|
11291
|
+
model_type: 'grouped_tiered_package';
|
|
9079
11292
|
|
|
9080
11293
|
name: string;
|
|
9081
11294
|
|
|
9082
11295
|
plan_phase_order: number | null;
|
|
9083
11296
|
|
|
9084
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
11297
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
9085
11298
|
|
|
9086
11299
|
/**
|
|
9087
11300
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -9092,7 +11305,47 @@ export namespace Price {
|
|
|
9092
11305
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
9093
11306
|
}
|
|
9094
11307
|
|
|
9095
|
-
export
|
|
11308
|
+
export namespace GroupedTieredPackagePrice {
|
|
11309
|
+
/**
|
|
11310
|
+
* Configuration for grouped_tiered_package pricing
|
|
11311
|
+
*/
|
|
11312
|
+
export interface GroupedTieredPackageConfig {
|
|
11313
|
+
/**
|
|
11314
|
+
* The event property used to group before tiering
|
|
11315
|
+
*/
|
|
11316
|
+
grouping_key: string;
|
|
11317
|
+
|
|
11318
|
+
/**
|
|
11319
|
+
* Package size
|
|
11320
|
+
*/
|
|
11321
|
+
package_size: string;
|
|
11322
|
+
|
|
11323
|
+
/**
|
|
11324
|
+
* Apply tiered pricing after rounding up the quantity to the package size. Tiers
|
|
11325
|
+
* are defined using exclusive lower bounds.
|
|
11326
|
+
*/
|
|
11327
|
+
tiers: Array<GroupedTieredPackageConfig.Tier>;
|
|
11328
|
+
}
|
|
11329
|
+
|
|
11330
|
+
export namespace GroupedTieredPackageConfig {
|
|
11331
|
+
/**
|
|
11332
|
+
* Configuration for a single tier
|
|
11333
|
+
*/
|
|
11334
|
+
export interface Tier {
|
|
11335
|
+
/**
|
|
11336
|
+
* Price per package
|
|
11337
|
+
*/
|
|
11338
|
+
per_unit: string;
|
|
11339
|
+
|
|
11340
|
+
/**
|
|
11341
|
+
* Tier lower bound
|
|
11342
|
+
*/
|
|
11343
|
+
tier_lower_bound: string;
|
|
11344
|
+
}
|
|
11345
|
+
}
|
|
11346
|
+
}
|
|
11347
|
+
|
|
11348
|
+
export interface MaxGroupTieredPackagePrice {
|
|
9096
11349
|
id: string;
|
|
9097
11350
|
|
|
9098
11351
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -9126,6 +11379,11 @@ export namespace Price {
|
|
|
9126
11379
|
|
|
9127
11380
|
item: Shared.ItemSlim;
|
|
9128
11381
|
|
|
11382
|
+
/**
|
|
11383
|
+
* Configuration for max_group_tiered_package pricing
|
|
11384
|
+
*/
|
|
11385
|
+
max_group_tiered_package_config: MaxGroupTieredPackagePrice.MaxGroupTieredPackageConfig;
|
|
11386
|
+
|
|
9129
11387
|
/**
|
|
9130
11388
|
* @deprecated
|
|
9131
11389
|
*/
|
|
@@ -9154,13 +11412,16 @@ export namespace Price {
|
|
|
9154
11412
|
*/
|
|
9155
11413
|
minimum_amount: string | null;
|
|
9156
11414
|
|
|
9157
|
-
|
|
11415
|
+
/**
|
|
11416
|
+
* The pricing model type
|
|
11417
|
+
*/
|
|
11418
|
+
model_type: 'max_group_tiered_package';
|
|
9158
11419
|
|
|
9159
11420
|
name: string;
|
|
9160
11421
|
|
|
9161
11422
|
plan_phase_order: number | null;
|
|
9162
11423
|
|
|
9163
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
11424
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
9164
11425
|
|
|
9165
11426
|
/**
|
|
9166
11427
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -9168,12 +11429,49 @@ export namespace Price {
|
|
|
9168
11429
|
*/
|
|
9169
11430
|
replaces_price_id: string | null;
|
|
9170
11431
|
|
|
9171
|
-
scalable_matrix_with_unit_pricing_config: { [key: string]: unknown };
|
|
9172
|
-
|
|
9173
11432
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
9174
11433
|
}
|
|
9175
11434
|
|
|
9176
|
-
export
|
|
11435
|
+
export namespace MaxGroupTieredPackagePrice {
|
|
11436
|
+
/**
|
|
11437
|
+
* Configuration for max_group_tiered_package pricing
|
|
11438
|
+
*/
|
|
11439
|
+
export interface MaxGroupTieredPackageConfig {
|
|
11440
|
+
/**
|
|
11441
|
+
* The event property used to group before tiering the group with the highest value
|
|
11442
|
+
*/
|
|
11443
|
+
grouping_key: string;
|
|
11444
|
+
|
|
11445
|
+
/**
|
|
11446
|
+
* Package size
|
|
11447
|
+
*/
|
|
11448
|
+
package_size: string;
|
|
11449
|
+
|
|
11450
|
+
/**
|
|
11451
|
+
* Apply tiered pricing to the largest group after grouping with the provided key.
|
|
11452
|
+
*/
|
|
11453
|
+
tiers: Array<MaxGroupTieredPackageConfig.Tier>;
|
|
11454
|
+
}
|
|
11455
|
+
|
|
11456
|
+
export namespace MaxGroupTieredPackageConfig {
|
|
11457
|
+
/**
|
|
11458
|
+
* Configuration for a single tier
|
|
11459
|
+
*/
|
|
11460
|
+
export interface Tier {
|
|
11461
|
+
/**
|
|
11462
|
+
* Tier lower bound
|
|
11463
|
+
*/
|
|
11464
|
+
tier_lower_bound: string;
|
|
11465
|
+
|
|
11466
|
+
/**
|
|
11467
|
+
* Per unit amount
|
|
11468
|
+
*/
|
|
11469
|
+
unit_amount: string;
|
|
11470
|
+
}
|
|
11471
|
+
}
|
|
11472
|
+
}
|
|
11473
|
+
|
|
11474
|
+
export interface ScalableMatrixWithUnitPricingPrice {
|
|
9177
11475
|
id: string;
|
|
9178
11476
|
|
|
9179
11477
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -9235,13 +11533,16 @@ export namespace Price {
|
|
|
9235
11533
|
*/
|
|
9236
11534
|
minimum_amount: string | null;
|
|
9237
11535
|
|
|
9238
|
-
|
|
11536
|
+
/**
|
|
11537
|
+
* The pricing model type
|
|
11538
|
+
*/
|
|
11539
|
+
model_type: 'scalable_matrix_with_unit_pricing';
|
|
9239
11540
|
|
|
9240
11541
|
name: string;
|
|
9241
11542
|
|
|
9242
11543
|
plan_phase_order: number | null;
|
|
9243
11544
|
|
|
9244
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
11545
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
9245
11546
|
|
|
9246
11547
|
/**
|
|
9247
11548
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -9249,12 +11550,69 @@ export namespace Price {
|
|
|
9249
11550
|
*/
|
|
9250
11551
|
replaces_price_id: string | null;
|
|
9251
11552
|
|
|
9252
|
-
|
|
11553
|
+
/**
|
|
11554
|
+
* Configuration for scalable_matrix_with_unit_pricing pricing
|
|
11555
|
+
*/
|
|
11556
|
+
scalable_matrix_with_unit_pricing_config: ScalableMatrixWithUnitPricingPrice.ScalableMatrixWithUnitPricingConfig;
|
|
9253
11557
|
|
|
9254
11558
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
9255
11559
|
}
|
|
9256
11560
|
|
|
9257
|
-
export
|
|
11561
|
+
export namespace ScalableMatrixWithUnitPricingPrice {
|
|
11562
|
+
/**
|
|
11563
|
+
* Configuration for scalable_matrix_with_unit_pricing pricing
|
|
11564
|
+
*/
|
|
11565
|
+
export interface ScalableMatrixWithUnitPricingConfig {
|
|
11566
|
+
/**
|
|
11567
|
+
* Used to determine the unit rate
|
|
11568
|
+
*/
|
|
11569
|
+
first_dimension: string;
|
|
11570
|
+
|
|
11571
|
+
/**
|
|
11572
|
+
* Apply a scaling factor to each dimension
|
|
11573
|
+
*/
|
|
11574
|
+
matrix_scaling_factors: Array<ScalableMatrixWithUnitPricingConfig.MatrixScalingFactor>;
|
|
11575
|
+
|
|
11576
|
+
/**
|
|
11577
|
+
* The final unit price to rate against the output of the matrix
|
|
11578
|
+
*/
|
|
11579
|
+
unit_price: string;
|
|
11580
|
+
|
|
11581
|
+
/**
|
|
11582
|
+
* If true, the unit price will be prorated to the billing period
|
|
11583
|
+
*/
|
|
11584
|
+
prorate?: boolean | null;
|
|
11585
|
+
|
|
11586
|
+
/**
|
|
11587
|
+
* Used to determine the unit rate (optional)
|
|
11588
|
+
*/
|
|
11589
|
+
second_dimension?: string | null;
|
|
11590
|
+
}
|
|
11591
|
+
|
|
11592
|
+
export namespace ScalableMatrixWithUnitPricingConfig {
|
|
11593
|
+
/**
|
|
11594
|
+
* Configuration for a single matrix scaling factor
|
|
11595
|
+
*/
|
|
11596
|
+
export interface MatrixScalingFactor {
|
|
11597
|
+
/**
|
|
11598
|
+
* First dimension value
|
|
11599
|
+
*/
|
|
11600
|
+
first_dimension_value: string;
|
|
11601
|
+
|
|
11602
|
+
/**
|
|
11603
|
+
* Scaling factor
|
|
11604
|
+
*/
|
|
11605
|
+
scaling_factor: string;
|
|
11606
|
+
|
|
11607
|
+
/**
|
|
11608
|
+
* Second dimension value (optional)
|
|
11609
|
+
*/
|
|
11610
|
+
second_dimension_value?: string | null;
|
|
11611
|
+
}
|
|
11612
|
+
}
|
|
11613
|
+
}
|
|
11614
|
+
|
|
11615
|
+
export interface ScalableMatrixWithTieredPricingPrice {
|
|
9258
11616
|
id: string;
|
|
9259
11617
|
|
|
9260
11618
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -9273,8 +11631,6 @@ export namespace Price {
|
|
|
9273
11631
|
|
|
9274
11632
|
credit_allocation: Shared.Allocation | null;
|
|
9275
11633
|
|
|
9276
|
-
cumulative_grouped_bulk_config: { [key: string]: unknown };
|
|
9277
|
-
|
|
9278
11634
|
currency: string;
|
|
9279
11635
|
|
|
9280
11636
|
/**
|
|
@@ -9318,13 +11674,16 @@ export namespace Price {
|
|
|
9318
11674
|
*/
|
|
9319
11675
|
minimum_amount: string | null;
|
|
9320
11676
|
|
|
9321
|
-
|
|
11677
|
+
/**
|
|
11678
|
+
* The pricing model type
|
|
11679
|
+
*/
|
|
11680
|
+
model_type: 'scalable_matrix_with_tiered_pricing';
|
|
9322
11681
|
|
|
9323
11682
|
name: string;
|
|
9324
11683
|
|
|
9325
11684
|
plan_phase_order: number | null;
|
|
9326
11685
|
|
|
9327
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
11686
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
9328
11687
|
|
|
9329
11688
|
/**
|
|
9330
11689
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -9332,10 +11691,79 @@ export namespace Price {
|
|
|
9332
11691
|
*/
|
|
9333
11692
|
replaces_price_id: string | null;
|
|
9334
11693
|
|
|
11694
|
+
/**
|
|
11695
|
+
* Configuration for scalable_matrix_with_tiered_pricing pricing
|
|
11696
|
+
*/
|
|
11697
|
+
scalable_matrix_with_tiered_pricing_config: ScalableMatrixWithTieredPricingPrice.ScalableMatrixWithTieredPricingConfig;
|
|
11698
|
+
|
|
9335
11699
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
9336
11700
|
}
|
|
9337
11701
|
|
|
9338
|
-
export
|
|
11702
|
+
export namespace ScalableMatrixWithTieredPricingPrice {
|
|
11703
|
+
/**
|
|
11704
|
+
* Configuration for scalable_matrix_with_tiered_pricing pricing
|
|
11705
|
+
*/
|
|
11706
|
+
export interface ScalableMatrixWithTieredPricingConfig {
|
|
11707
|
+
/**
|
|
11708
|
+
* Used for the scalable matrix first dimension
|
|
11709
|
+
*/
|
|
11710
|
+
first_dimension: string;
|
|
11711
|
+
|
|
11712
|
+
/**
|
|
11713
|
+
* Apply a scaling factor to each dimension
|
|
11714
|
+
*/
|
|
11715
|
+
matrix_scaling_factors: Array<ScalableMatrixWithTieredPricingConfig.MatrixScalingFactor>;
|
|
11716
|
+
|
|
11717
|
+
/**
|
|
11718
|
+
* Tier pricing structure
|
|
11719
|
+
*/
|
|
11720
|
+
tiers: Array<ScalableMatrixWithTieredPricingConfig.Tier>;
|
|
11721
|
+
|
|
11722
|
+
/**
|
|
11723
|
+
* Used for the scalable matrix second dimension (optional)
|
|
11724
|
+
*/
|
|
11725
|
+
second_dimension?: string | null;
|
|
11726
|
+
}
|
|
11727
|
+
|
|
11728
|
+
export namespace ScalableMatrixWithTieredPricingConfig {
|
|
11729
|
+
/**
|
|
11730
|
+
* Configuration for a single matrix scaling factor
|
|
11731
|
+
*/
|
|
11732
|
+
export interface MatrixScalingFactor {
|
|
11733
|
+
/**
|
|
11734
|
+
* First dimension value
|
|
11735
|
+
*/
|
|
11736
|
+
first_dimension_value: string;
|
|
11737
|
+
|
|
11738
|
+
/**
|
|
11739
|
+
* Scaling factor
|
|
11740
|
+
*/
|
|
11741
|
+
scaling_factor: string;
|
|
11742
|
+
|
|
11743
|
+
/**
|
|
11744
|
+
* Second dimension value (optional)
|
|
11745
|
+
*/
|
|
11746
|
+
second_dimension_value?: string | null;
|
|
11747
|
+
}
|
|
11748
|
+
|
|
11749
|
+
/**
|
|
11750
|
+
* Configuration for a single tier entry with business logic
|
|
11751
|
+
*/
|
|
11752
|
+
export interface Tier {
|
|
11753
|
+
/**
|
|
11754
|
+
* Tier lower bound
|
|
11755
|
+
*/
|
|
11756
|
+
tier_lower_bound: string;
|
|
11757
|
+
|
|
11758
|
+
/**
|
|
11759
|
+
* Per unit amount
|
|
11760
|
+
*/
|
|
11761
|
+
unit_amount: string;
|
|
11762
|
+
}
|
|
11763
|
+
}
|
|
11764
|
+
}
|
|
11765
|
+
|
|
11766
|
+
export interface CumulativeGroupedBulkPrice {
|
|
9339
11767
|
id: string;
|
|
9340
11768
|
|
|
9341
11769
|
billable_metric: Shared.BillableMetricTiny | null;
|
|
@@ -9354,6 +11782,11 @@ export namespace Price {
|
|
|
9354
11782
|
|
|
9355
11783
|
credit_allocation: Shared.Allocation | null;
|
|
9356
11784
|
|
|
11785
|
+
/**
|
|
11786
|
+
* Configuration for cumulative_grouped_bulk pricing
|
|
11787
|
+
*/
|
|
11788
|
+
cumulative_grouped_bulk_config: CumulativeGroupedBulkPrice.CumulativeGroupedBulkConfig;
|
|
11789
|
+
|
|
9357
11790
|
currency: string;
|
|
9358
11791
|
|
|
9359
11792
|
/**
|
|
@@ -9365,8 +11798,6 @@ export namespace Price {
|
|
|
9365
11798
|
|
|
9366
11799
|
fixed_price_quantity: number | null;
|
|
9367
11800
|
|
|
9368
|
-
grouped_with_min_max_thresholds_config: { [key: string]: unknown };
|
|
9369
|
-
|
|
9370
11801
|
invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
|
|
9371
11802
|
|
|
9372
11803
|
item: Shared.ItemSlim;
|
|
@@ -9399,13 +11830,16 @@ export namespace Price {
|
|
|
9399
11830
|
*/
|
|
9400
11831
|
minimum_amount: string | null;
|
|
9401
11832
|
|
|
9402
|
-
|
|
11833
|
+
/**
|
|
11834
|
+
* The pricing model type
|
|
11835
|
+
*/
|
|
11836
|
+
model_type: 'cumulative_grouped_bulk';
|
|
9403
11837
|
|
|
9404
11838
|
name: string;
|
|
9405
11839
|
|
|
9406
11840
|
plan_phase_order: number | null;
|
|
9407
11841
|
|
|
9408
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
11842
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
9409
11843
|
|
|
9410
11844
|
/**
|
|
9411
11845
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -9416,6 +11850,45 @@ export namespace Price {
|
|
|
9416
11850
|
dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
|
|
9417
11851
|
}
|
|
9418
11852
|
|
|
11853
|
+
export namespace CumulativeGroupedBulkPrice {
|
|
11854
|
+
/**
|
|
11855
|
+
* Configuration for cumulative_grouped_bulk pricing
|
|
11856
|
+
*/
|
|
11857
|
+
export interface CumulativeGroupedBulkConfig {
|
|
11858
|
+
/**
|
|
11859
|
+
* Each tier lower bound must have the same group of values.
|
|
11860
|
+
*/
|
|
11861
|
+
dimension_values: Array<CumulativeGroupedBulkConfig.DimensionValue>;
|
|
11862
|
+
|
|
11863
|
+
/**
|
|
11864
|
+
* Grouping key name
|
|
11865
|
+
*/
|
|
11866
|
+
group: string;
|
|
11867
|
+
}
|
|
11868
|
+
|
|
11869
|
+
export namespace CumulativeGroupedBulkConfig {
|
|
11870
|
+
/**
|
|
11871
|
+
* Configuration for a dimension value entry
|
|
11872
|
+
*/
|
|
11873
|
+
export interface DimensionValue {
|
|
11874
|
+
/**
|
|
11875
|
+
* Grouping key value
|
|
11876
|
+
*/
|
|
11877
|
+
grouping_key: string;
|
|
11878
|
+
|
|
11879
|
+
/**
|
|
11880
|
+
* Tier lower bound
|
|
11881
|
+
*/
|
|
11882
|
+
tier_lower_bound: string;
|
|
11883
|
+
|
|
11884
|
+
/**
|
|
11885
|
+
* Unit amount for this combination
|
|
11886
|
+
*/
|
|
11887
|
+
unit_amount: string;
|
|
11888
|
+
}
|
|
11889
|
+
}
|
|
11890
|
+
}
|
|
11891
|
+
|
|
9419
11892
|
export interface MinimumCompositePrice {
|
|
9420
11893
|
id: string;
|
|
9421
11894
|
|
|
@@ -9478,15 +11951,21 @@ export namespace Price {
|
|
|
9478
11951
|
*/
|
|
9479
11952
|
minimum_amount: string | null;
|
|
9480
11953
|
|
|
11954
|
+
/**
|
|
11955
|
+
* Configuration for minimum pricing
|
|
11956
|
+
*/
|
|
9481
11957
|
minimum_config: MinimumCompositePrice.MinimumConfig;
|
|
9482
11958
|
|
|
11959
|
+
/**
|
|
11960
|
+
* The pricing model type
|
|
11961
|
+
*/
|
|
9483
11962
|
model_type: 'minimum';
|
|
9484
11963
|
|
|
9485
11964
|
name: string;
|
|
9486
11965
|
|
|
9487
11966
|
plan_phase_order: number | null;
|
|
9488
11967
|
|
|
9489
|
-
price_type: 'usage_price' | 'fixed_price';
|
|
11968
|
+
price_type: 'usage_price' | 'fixed_price' | 'composite_price';
|
|
9490
11969
|
|
|
9491
11970
|
/**
|
|
9492
11971
|
* The price id this price replaces. This price will take the place of the replaced
|
|
@@ -9498,6 +11977,9 @@ export namespace Price {
|
|
|
9498
11977
|
}
|
|
9499
11978
|
|
|
9500
11979
|
export namespace MinimumCompositePrice {
|
|
11980
|
+
/**
|
|
11981
|
+
* Configuration for minimum pricing
|
|
11982
|
+
*/
|
|
9501
11983
|
export interface MinimumConfig {
|
|
9502
11984
|
/**
|
|
9503
11985
|
* The minimum amount to apply
|
|
@@ -9505,10 +11987,9 @@ export namespace Price {
|
|
|
9505
11987
|
minimum_amount: string;
|
|
9506
11988
|
|
|
9507
11989
|
/**
|
|
9508
|
-
*
|
|
9509
|
-
* service period. Set to false to disable proration.
|
|
11990
|
+
* If true, subtotals from this price are prorated based on the service period
|
|
9510
11991
|
*/
|
|
9511
|
-
prorated?: boolean
|
|
11992
|
+
prorated?: boolean;
|
|
9512
11993
|
}
|
|
9513
11994
|
}
|
|
9514
11995
|
}
|
|
@@ -9629,6 +12110,9 @@ export interface TaxAmount {
|
|
|
9629
12110
|
tax_rate_percentage: string | null;
|
|
9630
12111
|
}
|
|
9631
12112
|
|
|
12113
|
+
/**
|
|
12114
|
+
* Configuration for a single tier
|
|
12115
|
+
*/
|
|
9632
12116
|
export interface Tier {
|
|
9633
12117
|
/**
|
|
9634
12118
|
* Exclusive tier starting value
|
|
@@ -9641,19 +12125,12 @@ export interface Tier {
|
|
|
9641
12125
|
unit_amount: string;
|
|
9642
12126
|
|
|
9643
12127
|
/**
|
|
9644
|
-
* Inclusive tier ending value.
|
|
12128
|
+
* Inclusive tier ending value. This value is null if and only if this is the last
|
|
12129
|
+
* tier.
|
|
9645
12130
|
*/
|
|
9646
12131
|
last_unit?: number | null;
|
|
9647
12132
|
}
|
|
9648
12133
|
|
|
9649
|
-
export interface TierConfig {
|
|
9650
|
-
first_unit: number;
|
|
9651
|
-
|
|
9652
|
-
last_unit: number | null;
|
|
9653
|
-
|
|
9654
|
-
unit_amount: string;
|
|
9655
|
-
}
|
|
9656
|
-
|
|
9657
12134
|
export interface TierSubLineItem {
|
|
9658
12135
|
/**
|
|
9659
12136
|
* The total amount for this sub line item.
|
|
@@ -9666,11 +12143,24 @@ export interface TierSubLineItem {
|
|
|
9666
12143
|
|
|
9667
12144
|
quantity: number;
|
|
9668
12145
|
|
|
9669
|
-
tier_config: TierConfig;
|
|
12146
|
+
tier_config: TierSubLineItem.TierConfig;
|
|
9670
12147
|
|
|
9671
12148
|
type: 'tier';
|
|
9672
12149
|
}
|
|
9673
12150
|
|
|
12151
|
+
export namespace TierSubLineItem {
|
|
12152
|
+
export interface TierConfig {
|
|
12153
|
+
first_unit: number;
|
|
12154
|
+
|
|
12155
|
+
last_unit: number | null;
|
|
12156
|
+
|
|
12157
|
+
unit_amount: string;
|
|
12158
|
+
}
|
|
12159
|
+
}
|
|
12160
|
+
|
|
12161
|
+
/**
|
|
12162
|
+
* Configuration for tiered pricing
|
|
12163
|
+
*/
|
|
9674
12164
|
export interface TieredConfig {
|
|
9675
12165
|
/**
|
|
9676
12166
|
* Tiers for rating based on total usage quantities into the specified tier
|
|
@@ -9728,11 +12218,19 @@ export interface TrialDiscount {
|
|
|
9728
12218
|
trial_percentage_discount?: number | null;
|
|
9729
12219
|
}
|
|
9730
12220
|
|
|
12221
|
+
/**
|
|
12222
|
+
* Configuration for unit pricing
|
|
12223
|
+
*/
|
|
9731
12224
|
export interface UnitConfig {
|
|
9732
12225
|
/**
|
|
9733
12226
|
* Rate per unit of usage
|
|
9734
12227
|
*/
|
|
9735
12228
|
unit_amount: string;
|
|
12229
|
+
|
|
12230
|
+
/**
|
|
12231
|
+
* Multiplier to scale rated quantity by
|
|
12232
|
+
*/
|
|
12233
|
+
scaling_factor?: number | null;
|
|
9736
12234
|
}
|
|
9737
12235
|
|
|
9738
12236
|
export interface UnitConversionRateConfig {
|