orb-billing 5.48.0 → 5.76.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (205) hide show
  1. package/CHANGELOG.md +249 -0
  2. package/core.js +2 -2
  3. package/core.js.map +1 -1
  4. package/core.mjs +2 -2
  5. package/core.mjs.map +1 -1
  6. package/index.d.ts.map +1 -1
  7. package/index.js +11 -0
  8. package/index.js.map +1 -1
  9. package/index.mjs +11 -0
  10. package/index.mjs.map +1 -1
  11. package/package.json +1 -1
  12. package/resources/alerts.d.ts +140 -3
  13. package/resources/alerts.d.ts.map +1 -1
  14. package/resources/alerts.js.map +1 -1
  15. package/resources/alerts.mjs.map +1 -1
  16. package/resources/beta/beta.d.ts +738 -7570
  17. package/resources/beta/beta.d.ts.map +1 -1
  18. package/resources/beta/beta.js.map +1 -1
  19. package/resources/beta/beta.mjs.map +1 -1
  20. package/resources/beta/external-plan-id.d.ts +664 -7572
  21. package/resources/beta/external-plan-id.d.ts.map +1 -1
  22. package/resources/coupons/coupons.d.ts +29 -0
  23. package/resources/coupons/coupons.d.ts.map +1 -1
  24. package/resources/coupons/coupons.js +21 -0
  25. package/resources/coupons/coupons.js.map +1 -1
  26. package/resources/coupons/coupons.mjs +21 -0
  27. package/resources/coupons/coupons.mjs.map +1 -1
  28. package/resources/coupons/subscriptions.d.ts +10 -0
  29. package/resources/coupons/subscriptions.d.ts.map +1 -1
  30. package/resources/coupons/subscriptions.js.map +1 -1
  31. package/resources/coupons/subscriptions.mjs.map +1 -1
  32. package/resources/credit-blocks.d.ts +138 -7
  33. package/resources/credit-blocks.d.ts.map +1 -1
  34. package/resources/credit-blocks.js +10 -7
  35. package/resources/credit-blocks.js.map +1 -1
  36. package/resources/credit-blocks.mjs +10 -7
  37. package/resources/credit-blocks.mjs.map +1 -1
  38. package/resources/credit-notes.d.ts +28 -0
  39. package/resources/credit-notes.d.ts.map +1 -1
  40. package/resources/credit-notes.js +20 -0
  41. package/resources/credit-notes.js.map +1 -1
  42. package/resources/credit-notes.mjs +20 -0
  43. package/resources/credit-notes.mjs.map +1 -1
  44. package/resources/customers/credits/credits.d.ts +129 -0
  45. package/resources/customers/credits/credits.d.ts.map +1 -1
  46. package/resources/customers/credits/credits.js.map +1 -1
  47. package/resources/customers/credits/credits.mjs.map +1 -1
  48. package/resources/customers/credits/ledger.d.ts +34 -20
  49. package/resources/customers/credits/ledger.d.ts.map +1 -1
  50. package/resources/customers/credits/ledger.js +28 -14
  51. package/resources/customers/credits/ledger.js.map +1 -1
  52. package/resources/customers/credits/ledger.mjs +28 -14
  53. package/resources/customers/credits/ledger.mjs.map +1 -1
  54. package/resources/customers/customers.d.ts +89 -6
  55. package/resources/customers/customers.d.ts.map +1 -1
  56. package/resources/customers/customers.js.map +1 -1
  57. package/resources/customers/customers.mjs.map +1 -1
  58. package/resources/dimensional-price-groups/dimensional-price-groups.d.ts +35 -1
  59. package/resources/dimensional-price-groups/dimensional-price-groups.d.ts.map +1 -1
  60. package/resources/dimensional-price-groups/dimensional-price-groups.js +26 -0
  61. package/resources/dimensional-price-groups/dimensional-price-groups.js.map +1 -1
  62. package/resources/dimensional-price-groups/dimensional-price-groups.mjs +26 -0
  63. package/resources/dimensional-price-groups/dimensional-price-groups.mjs.map +1 -1
  64. package/resources/dimensional-price-groups/external-dimensional-price-group-id.d.ts +16 -0
  65. package/resources/dimensional-price-groups/external-dimensional-price-group-id.d.ts.map +1 -1
  66. package/resources/dimensional-price-groups/external-dimensional-price-group-id.js +16 -0
  67. package/resources/dimensional-price-groups/external-dimensional-price-group-id.js.map +1 -1
  68. package/resources/dimensional-price-groups/external-dimensional-price-group-id.mjs +16 -0
  69. package/resources/dimensional-price-groups/external-dimensional-price-group-id.mjs.map +1 -1
  70. package/resources/events/backfills.d.ts +37 -0
  71. package/resources/events/backfills.d.ts.map +1 -1
  72. package/resources/events/backfills.js +29 -0
  73. package/resources/events/backfills.js.map +1 -1
  74. package/resources/events/backfills.mjs +29 -0
  75. package/resources/events/backfills.mjs.map +1 -1
  76. package/resources/events/events.d.ts +41 -33
  77. package/resources/events/events.d.ts.map +1 -1
  78. package/resources/events/events.js +39 -31
  79. package/resources/events/events.js.map +1 -1
  80. package/resources/events/events.mjs +39 -31
  81. package/resources/events/events.mjs.map +1 -1
  82. package/resources/events/volume.d.ts +7 -0
  83. package/resources/events/volume.d.ts.map +1 -1
  84. package/resources/events/volume.js +7 -0
  85. package/resources/events/volume.js.map +1 -1
  86. package/resources/events/volume.mjs +7 -0
  87. package/resources/events/volume.mjs.map +1 -1
  88. package/resources/invoice-line-items.d.ts +89 -1
  89. package/resources/invoice-line-items.d.ts.map +1 -1
  90. package/resources/invoice-line-items.js +12 -0
  91. package/resources/invoice-line-items.js.map +1 -1
  92. package/resources/invoice-line-items.mjs +12 -0
  93. package/resources/invoice-line-items.mjs.map +1 -1
  94. package/resources/invoices.d.ts +200 -12
  95. package/resources/invoices.d.ts.map +1 -1
  96. package/resources/invoices.js +64 -0
  97. package/resources/invoices.js.map +1 -1
  98. package/resources/invoices.mjs +64 -0
  99. package/resources/invoices.mjs.map +1 -1
  100. package/resources/items.d.ts +30 -0
  101. package/resources/items.d.ts.map +1 -1
  102. package/resources/items.js +22 -0
  103. package/resources/items.js.map +1 -1
  104. package/resources/items.mjs +22 -0
  105. package/resources/items.mjs.map +1 -1
  106. package/resources/licenses/external-licenses.d.ts +13 -1
  107. package/resources/licenses/external-licenses.d.ts.map +1 -1
  108. package/resources/licenses/external-licenses.js +12 -0
  109. package/resources/licenses/external-licenses.js.map +1 -1
  110. package/resources/licenses/external-licenses.mjs +12 -0
  111. package/resources/licenses/external-licenses.mjs.map +1 -1
  112. package/resources/licenses/licenses.d.ts +44 -0
  113. package/resources/licenses/licenses.d.ts.map +1 -1
  114. package/resources/licenses/licenses.js +44 -0
  115. package/resources/licenses/licenses.js.map +1 -1
  116. package/resources/licenses/licenses.mjs +44 -0
  117. package/resources/licenses/licenses.mjs.map +1 -1
  118. package/resources/licenses/usage.d.ts +17 -2
  119. package/resources/licenses/usage.d.ts.map +1 -1
  120. package/resources/licenses/usage.js +8 -0
  121. package/resources/licenses/usage.js.map +1 -1
  122. package/resources/licenses/usage.mjs +8 -0
  123. package/resources/licenses/usage.mjs.map +1 -1
  124. package/resources/metrics.d.ts +42 -5
  125. package/resources/metrics.d.ts.map +1 -1
  126. package/resources/metrics.js +27 -2
  127. package/resources/metrics.js.map +1 -1
  128. package/resources/metrics.mjs +27 -2
  129. package/resources/metrics.mjs.map +1 -1
  130. package/resources/plans/external-plan-id.d.ts +6 -2
  131. package/resources/plans/external-plan-id.d.ts.map +1 -1
  132. package/resources/plans/external-plan-id.js +2 -2
  133. package/resources/plans/external-plan-id.mjs +2 -2
  134. package/resources/plans/migrations.d.ts +42 -0
  135. package/resources/plans/migrations.d.ts.map +1 -1
  136. package/resources/plans/migrations.js.map +1 -1
  137. package/resources/plans/migrations.mjs.map +1 -1
  138. package/resources/plans/plans.d.ts +382 -3754
  139. package/resources/plans/plans.d.ts.map +1 -1
  140. package/resources/plans/plans.js +2 -2
  141. package/resources/plans/plans.js.map +1 -1
  142. package/resources/plans/plans.mjs +2 -2
  143. package/resources/plans/plans.mjs.map +1 -1
  144. package/resources/prices/external-price-id.d.ts +14 -0
  145. package/resources/prices/external-price-id.d.ts.map +1 -1
  146. package/resources/prices/external-price-id.js +14 -0
  147. package/resources/prices/external-price-id.js.map +1 -1
  148. package/resources/prices/external-price-id.mjs +14 -0
  149. package/resources/prices/external-price-id.mjs.map +1 -1
  150. package/resources/prices/prices.d.ts +1632 -393
  151. package/resources/prices/prices.d.ts.map +1 -1
  152. package/resources/prices/prices.js +46 -0
  153. package/resources/prices/prices.js.map +1 -1
  154. package/resources/prices/prices.mjs +46 -0
  155. package/resources/prices/prices.mjs.map +1 -1
  156. package/resources/shared.d.ts +922 -52
  157. package/resources/shared.d.ts.map +1 -1
  158. package/resources/shared.js.map +1 -1
  159. package/resources/shared.mjs.map +1 -1
  160. package/resources/subscription-changes.d.ts +72 -1
  161. package/resources/subscription-changes.d.ts.map +1 -1
  162. package/resources/subscription-changes.js.map +1 -1
  163. package/resources/subscription-changes.mjs.map +1 -1
  164. package/resources/subscriptions.d.ts +3075 -464
  165. package/resources/subscriptions.d.ts.map +1 -1
  166. package/resources/subscriptions.js +111 -0
  167. package/resources/subscriptions.js.map +1 -1
  168. package/resources/subscriptions.mjs +111 -0
  169. package/resources/subscriptions.mjs.map +1 -1
  170. package/src/core.ts +2 -2
  171. package/src/index.ts +12 -0
  172. package/src/resources/alerts.ts +161 -3
  173. package/src/resources/beta/beta.ts +828 -8988
  174. package/src/resources/beta/external-plan-id.ts +745 -8997
  175. package/src/resources/coupons/coupons.ts +29 -0
  176. package/src/resources/coupons/subscriptions.ts +10 -0
  177. package/src/resources/credit-blocks.ts +166 -7
  178. package/src/resources/credit-notes.ts +28 -0
  179. package/src/resources/customers/credits/credits.ts +157 -0
  180. package/src/resources/customers/credits/ledger.ts +34 -20
  181. package/src/resources/customers/customers.ts +99 -6
  182. package/src/resources/dimensional-price-groups/dimensional-price-groups.ts +35 -1
  183. package/src/resources/dimensional-price-groups/external-dimensional-price-group-id.ts +16 -0
  184. package/src/resources/events/backfills.ts +37 -0
  185. package/src/resources/events/events.ts +41 -33
  186. package/src/resources/events/volume.ts +7 -0
  187. package/src/resources/invoice-line-items.ts +104 -0
  188. package/src/resources/invoices.ts +215 -11
  189. package/src/resources/items.ts +30 -0
  190. package/src/resources/licenses/external-licenses.ts +13 -1
  191. package/src/resources/licenses/licenses.ts +44 -0
  192. package/src/resources/licenses/usage.ts +17 -2
  193. package/src/resources/metrics.ts +43 -5
  194. package/src/resources/plans/external-plan-id.ts +7 -2
  195. package/src/resources/plans/migrations.ts +42 -0
  196. package/src/resources/plans/plans.ts +456 -4482
  197. package/src/resources/prices/external-price-id.ts +14 -0
  198. package/src/resources/prices/prices.ts +1743 -264
  199. package/src/resources/shared.ts +1172 -50
  200. package/src/resources/subscription-changes.ts +88 -1
  201. package/src/resources/subscriptions.ts +4707 -1585
  202. package/src/version.ts +1 -1
  203. package/version.d.ts +1 -1
  204. package/version.js +1 -1
  205. package/version.mjs +1 -1
@@ -24,6 +24,7 @@ export interface AdjustmentInterval {
24
24
  | PlanPhaseUsageDiscountAdjustment
25
25
  | PlanPhaseAmountDiscountAdjustment
26
26
  | PlanPhasePercentageDiscountAdjustment
27
+ | AdjustmentInterval.PlanPhaseTieredPercentageDiscountAdjustment
27
28
  | PlanPhaseMinimumAdjustment
28
29
  | PlanPhaseMaximumAdjustment;
29
30
 
@@ -43,6 +44,97 @@ export interface AdjustmentInterval {
43
44
  start_date: string;
44
45
  }
45
46
 
47
+ export namespace AdjustmentInterval {
48
+ export interface PlanPhaseTieredPercentageDiscountAdjustment {
49
+ id: string;
50
+
51
+ adjustment_type: 'tiered_percentage_discount';
52
+
53
+ /**
54
+ * @deprecated The price IDs that this adjustment applies to.
55
+ */
56
+ applies_to_price_ids: Array<string>;
57
+
58
+ /**
59
+ * The filters that determine which prices to apply this adjustment to.
60
+ */
61
+ filters: Array<PlanPhaseTieredPercentageDiscountAdjustment.Filter>;
62
+
63
+ /**
64
+ * True for adjustments that apply to an entire invoice, false for adjustments that
65
+ * apply to only one price.
66
+ */
67
+ is_invoice_level: boolean;
68
+
69
+ /**
70
+ * The plan phase in which this adjustment is active.
71
+ */
72
+ plan_phase_order: number | null;
73
+
74
+ /**
75
+ * The reason for the adjustment.
76
+ */
77
+ reason: string | null;
78
+
79
+ /**
80
+ * The adjustment id this adjustment replaces. This adjustment will take the place
81
+ * of the replaced adjustment in plan version migrations.
82
+ */
83
+ replaces_adjustment_id: string | null;
84
+
85
+ /**
86
+ * The ordered, contiguous bands of cumulative eligible spend, each discounted at
87
+ * its own percentage (progressive fill-a-tier), applied to the prices this
88
+ * adjustment covers in a given billing period.
89
+ */
90
+ tiers: Array<PlanPhaseTieredPercentageDiscountAdjustment.Tier>;
91
+ }
92
+
93
+ export namespace PlanPhaseTieredPercentageDiscountAdjustment {
94
+ export interface Filter {
95
+ /**
96
+ * The property of the price to filter on.
97
+ */
98
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
99
+
100
+ /**
101
+ * Should prices that match the filter be included or excluded.
102
+ */
103
+ operator: 'includes' | 'excludes';
104
+
105
+ /**
106
+ * The IDs or values that match this filter.
107
+ */
108
+ values: Array<string>;
109
+ }
110
+
111
+ /**
112
+ * One band of a tiered percentage discount. Bounds are denominated in the
113
+ * discount's currency. `lower_bound` is the exclusive start of the band and
114
+ * `upper_bound` is the inclusive end; `upper_bound` is null only for the
115
+ * open-ended final tier.
116
+ */
117
+ export interface Tier {
118
+ /**
119
+ * Exclusive lower bound of cumulative spend for this tier.
120
+ */
121
+ lower_bound: number;
122
+
123
+ /**
124
+ * The percentage (between 0 and 1) discounted from spend that falls within this
125
+ * tier.
126
+ */
127
+ percentage: number;
128
+
129
+ /**
130
+ * Inclusive upper bound of cumulative spend for this tier; null for the final
131
+ * open-ended tier.
132
+ */
133
+ upper_bound?: number | null;
134
+ }
135
+ }
136
+ }
137
+
46
138
  export interface AggregatedCost {
47
139
  per_price_costs: Array<PerPriceCost>;
48
140
 
@@ -354,11 +446,13 @@ export namespace ChangedSubscriptionResources {
354
446
  * | Estonia | `eu_vat` | European VAT Number |
355
447
  * | Ethiopia | `et_tin` | Ethiopia Tax Identification Number |
356
448
  * | European Union | `eu_oss_vat` | European One Stop Shop VAT Number for non-Union scheme |
449
+ * | Faroe Islands | `fo_vat` | Faroe Islands VAT Number |
357
450
  * | Finland | `eu_vat` | European VAT Number |
358
451
  * | France | `eu_vat` | European VAT Number |
359
452
  * | Georgia | `ge_vat` | Georgian VAT |
360
453
  * | Germany | `de_stn` | German Tax Number (Steuernummer) |
361
454
  * | Germany | `eu_vat` | European VAT Number |
455
+ * | Gibraltar | `gi_tin` | Gibraltar Tax Identification Number |
362
456
  * | Greece | `eu_vat` | European VAT Number |
363
457
  * | Guinea | `gn_nif` | Guinea Tax Identification Number (Número de Identificação Fiscal) |
364
458
  * | Hong Kong | `hk_br` | Hong Kong BR Number |
@@ -370,6 +464,7 @@ export namespace ChangedSubscriptionResources {
370
464
  * | Ireland | `eu_vat` | European VAT Number |
371
465
  * | Israel | `il_vat` | Israel VAT |
372
466
  * | Italy | `eu_vat` | European VAT Number |
467
+ * | Italy | `it_cf` | Italian Codice Fiscale Number |
373
468
  * | Japan | `jp_cn` | Japanese Corporate Number (_Hōjin Bangō_) |
374
469
  * | Japan | `jp_rn` | Japanese Registered Foreign Businesses' Registration Number (_Tōroku Kokugai Jigyōsha no Tōroku Bangō_) |
375
470
  * | Japan | `jp_trn` | Japanese Tax Registration Number (_Tōroku Bangō_) |
@@ -400,6 +495,7 @@ export namespace ChangedSubscriptionResources {
400
495
  * | Norway | `no_vat` | Norwegian VAT Number |
401
496
  * | Norway | `no_voec` | Norwegian VAT on e-commerce Number |
402
497
  * | Oman | `om_vat` | Omani VAT Number |
498
+ * | Paraguay | `py_ruc` | Paraguayan RUC Number |
403
499
  * | Peru | `pe_ruc` | Peruvian RUC Number |
404
500
  * | Philippines | `ph_tin` | Philippines Tax Identification Number |
405
501
  * | Poland | `eu_vat` | European VAT Number |
@@ -421,6 +517,7 @@ export namespace ChangedSubscriptionResources {
421
517
  * | South Korea | `kr_brn` | Korean BRN |
422
518
  * | Spain | `es_cif` | Spanish NIF Number (previously Spanish CIF Number) |
423
519
  * | Spain | `eu_vat` | European VAT Number |
520
+ * | Sri Lanka | `lk_vat` | Sri Lanka VAT Number |
424
521
  * | Suriname | `sr_fin` | Suriname FIN Number |
425
522
  * | Sweden | `eu_vat` | European VAT Number |
426
523
  * | Switzerland | `ch_uid` | Switzerland UID Number |
@@ -468,8 +565,8 @@ export namespace ChangedSubscriptionResources {
468
565
  eligible_to_issue_at: string | null;
469
566
 
470
567
  /**
471
- * A URL for the customer-facing invoice portal. This URL expires 30 days after the
472
- * invoice's due date, or 60 days after being re-generated through the UI.
568
+ * A URL for the customer-facing invoice portal. This URL expires 60 days after the
569
+ * link is generated, or 30 days after the invoice's due date — whichever is later.
473
570
  */
474
571
  hosted_invoice_url: string | null;
475
572
 
@@ -727,6 +824,7 @@ export namespace ChangedSubscriptionResources {
727
824
  | Shared.MonetaryUsageDiscountAdjustment
728
825
  | Shared.MonetaryAmountDiscountAdjustment
729
826
  | Shared.MonetaryPercentageDiscountAdjustment
827
+ | LineItem.MonetaryTieredPercentageDiscountAdjustment
730
828
  | Shared.MonetaryMinimumAdjustment
731
829
  | Shared.MonetaryMaximumAdjustment
732
830
  >;
@@ -816,6 +914,97 @@ export namespace ChangedSubscriptionResources {
816
914
  usage_customer_ids: Array<string> | null;
817
915
  }
818
916
 
917
+ export namespace LineItem {
918
+ export interface MonetaryTieredPercentageDiscountAdjustment {
919
+ id: string;
920
+
921
+ adjustment_type: 'tiered_percentage_discount';
922
+
923
+ /**
924
+ * The value applied by an adjustment.
925
+ */
926
+ amount: string;
927
+
928
+ /**
929
+ * @deprecated The price IDs that this adjustment applies to.
930
+ */
931
+ applies_to_price_ids: Array<string>;
932
+
933
+ /**
934
+ * The filters that determine which prices to apply this adjustment to.
935
+ */
936
+ filters: Array<MonetaryTieredPercentageDiscountAdjustment.Filter>;
937
+
938
+ /**
939
+ * True for adjustments that apply to an entire invoice, false for adjustments that
940
+ * apply to only one price.
941
+ */
942
+ is_invoice_level: boolean;
943
+
944
+ /**
945
+ * The reason for the adjustment.
946
+ */
947
+ reason: string | null;
948
+
949
+ /**
950
+ * The adjustment id this adjustment replaces. This adjustment will take the place
951
+ * of the replaced adjustment in plan version migrations.
952
+ */
953
+ replaces_adjustment_id: string | null;
954
+
955
+ /**
956
+ * The ordered, contiguous bands of cumulative eligible spend, each discounted at
957
+ * its own percentage (progressive fill-a-tier), applied to the prices this
958
+ * adjustment covers in a given billing period.
959
+ */
960
+ tiers: Array<MonetaryTieredPercentageDiscountAdjustment.Tier>;
961
+ }
962
+
963
+ export namespace MonetaryTieredPercentageDiscountAdjustment {
964
+ export interface Filter {
965
+ /**
966
+ * The property of the price to filter on.
967
+ */
968
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
969
+
970
+ /**
971
+ * Should prices that match the filter be included or excluded.
972
+ */
973
+ operator: 'includes' | 'excludes';
974
+
975
+ /**
976
+ * The IDs or values that match this filter.
977
+ */
978
+ values: Array<string>;
979
+ }
980
+
981
+ /**
982
+ * One band of a tiered percentage discount. Bounds are denominated in the
983
+ * discount's currency. `lower_bound` is the exclusive start of the band and
984
+ * `upper_bound` is the inclusive end; `upper_bound` is null only for the
985
+ * open-ended final tier.
986
+ */
987
+ export interface Tier {
988
+ /**
989
+ * Exclusive lower bound of cumulative spend for this tier.
990
+ */
991
+ lower_bound: number;
992
+
993
+ /**
994
+ * The percentage (between 0 and 1) discounted from spend that falls within this
995
+ * tier.
996
+ */
997
+ percentage: number;
998
+
999
+ /**
1000
+ * Inclusive upper bound of cumulative spend for this tier; null for the final
1001
+ * open-ended tier.
1002
+ */
1003
+ upper_bound?: number | null;
1004
+ }
1005
+ }
1006
+ }
1007
+
819
1008
  export interface PaymentAttempt {
820
1009
  /**
821
1010
  * The ID of the payment attempt.
@@ -835,7 +1024,7 @@ export namespace ChangedSubscriptionResources {
835
1024
  /**
836
1025
  * The payment provider that attempted to collect the payment.
837
1026
  */
838
- payment_provider: 'stripe' | null;
1027
+ payment_provider: 'stripe' | 'adyen' | null;
839
1028
 
840
1029
  /**
841
1030
  * The ID of the payment attempt in the payment provider.
@@ -1164,11 +1353,13 @@ export interface CustomerMinified {
1164
1353
  * | Estonia | `eu_vat` | European VAT Number |
1165
1354
  * | Ethiopia | `et_tin` | Ethiopia Tax Identification Number |
1166
1355
  * | European Union | `eu_oss_vat` | European One Stop Shop VAT Number for non-Union scheme |
1356
+ * | Faroe Islands | `fo_vat` | Faroe Islands VAT Number |
1167
1357
  * | Finland | `eu_vat` | European VAT Number |
1168
1358
  * | France | `eu_vat` | European VAT Number |
1169
1359
  * | Georgia | `ge_vat` | Georgian VAT |
1170
1360
  * | Germany | `de_stn` | German Tax Number (Steuernummer) |
1171
1361
  * | Germany | `eu_vat` | European VAT Number |
1362
+ * | Gibraltar | `gi_tin` | Gibraltar Tax Identification Number |
1172
1363
  * | Greece | `eu_vat` | European VAT Number |
1173
1364
  * | Guinea | `gn_nif` | Guinea Tax Identification Number (Número de Identificação Fiscal) |
1174
1365
  * | Hong Kong | `hk_br` | Hong Kong BR Number |
@@ -1180,6 +1371,7 @@ export interface CustomerMinified {
1180
1371
  * | Ireland | `eu_vat` | European VAT Number |
1181
1372
  * | Israel | `il_vat` | Israel VAT |
1182
1373
  * | Italy | `eu_vat` | European VAT Number |
1374
+ * | Italy | `it_cf` | Italian Codice Fiscale Number |
1183
1375
  * | Japan | `jp_cn` | Japanese Corporate Number (_Hōjin Bangō_) |
1184
1376
  * | Japan | `jp_rn` | Japanese Registered Foreign Businesses' Registration Number (_Tōroku Kokugai Jigyōsha no Tōroku Bangō_) |
1185
1377
  * | Japan | `jp_trn` | Japanese Tax Registration Number (_Tōroku Bangō_) |
@@ -1210,6 +1402,7 @@ export interface CustomerMinified {
1210
1402
  * | Norway | `no_vat` | Norwegian VAT Number |
1211
1403
  * | Norway | `no_voec` | Norwegian VAT on e-commerce Number |
1212
1404
  * | Oman | `om_vat` | Omani VAT Number |
1405
+ * | Paraguay | `py_ruc` | Paraguayan RUC Number |
1213
1406
  * | Peru | `pe_ruc` | Peruvian RUC Number |
1214
1407
  * | Philippines | `ph_tin` | Philippines Tax Identification Number |
1215
1408
  * | Poland | `eu_vat` | European VAT Number |
@@ -1231,6 +1424,7 @@ export interface CustomerMinified {
1231
1424
  * | South Korea | `kr_brn` | Korean BRN |
1232
1425
  * | Spain | `es_cif` | Spanish NIF Number (previously Spanish CIF Number) |
1233
1426
  * | Spain | `eu_vat` | European VAT Number |
1427
+ * | Sri Lanka | `lk_vat` | Sri Lanka VAT Number |
1234
1428
  * | Suriname | `sr_fin` | Suriname FIN Number |
1235
1429
  * | Sweden | `eu_vat` | European VAT Number |
1236
1430
  * | Switzerland | `ch_uid` | Switzerland UID Number |
@@ -1286,9 +1480,9 @@ export interface CustomerTaxID {
1286
1480
  | 'CO'
1287
1481
  | 'CR'
1288
1482
  | 'CV'
1289
- | 'DE'
1290
1483
  | 'CY'
1291
1484
  | 'CZ'
1485
+ | 'DE'
1292
1486
  | 'DK'
1293
1487
  | 'DO'
1294
1488
  | 'EC'
@@ -1298,9 +1492,11 @@ export interface CustomerTaxID {
1298
1492
  | 'ET'
1299
1493
  | 'EU'
1300
1494
  | 'FI'
1495
+ | 'FO'
1301
1496
  | 'FR'
1302
1497
  | 'GB'
1303
1498
  | 'GE'
1499
+ | 'GI'
1304
1500
  | 'GN'
1305
1501
  | 'GR'
1306
1502
  | 'HK'
@@ -1320,6 +1516,7 @@ export interface CustomerTaxID {
1320
1516
  | 'KZ'
1321
1517
  | 'LA'
1322
1518
  | 'LI'
1519
+ | 'LK'
1323
1520
  | 'LT'
1324
1521
  | 'LU'
1325
1522
  | 'LV'
@@ -1341,6 +1538,7 @@ export interface CustomerTaxID {
1341
1538
  | 'PH'
1342
1539
  | 'PL'
1343
1540
  | 'PT'
1541
+ | 'PY'
1344
1542
  | 'RO'
1345
1543
  | 'RS'
1346
1544
  | 'RU'
@@ -1414,8 +1612,10 @@ export interface CustomerTaxID {
1414
1612
  | 'es_cif'
1415
1613
  | 'et_tin'
1416
1614
  | 'eu_oss_vat'
1615
+ | 'fo_vat'
1417
1616
  | 'gb_vat'
1418
1617
  | 'ge_vat'
1618
+ | 'gi_tin'
1419
1619
  | 'gn_nif'
1420
1620
  | 'hk_br'
1421
1621
  | 'hr_oib'
@@ -1424,6 +1624,7 @@ export interface CustomerTaxID {
1424
1624
  | 'il_vat'
1425
1625
  | 'in_gst'
1426
1626
  | 'is_vat'
1627
+ | 'it_cf'
1427
1628
  | 'jp_cn'
1428
1629
  | 'jp_rn'
1429
1630
  | 'jp_trn'
@@ -1435,6 +1636,7 @@ export interface CustomerTaxID {
1435
1636
  | 'la_tin'
1436
1637
  | 'li_uid'
1437
1638
  | 'li_vat'
1639
+ | 'lk_vat'
1438
1640
  | 'ma_vat'
1439
1641
  | 'md_vat'
1440
1642
  | 'me_pib'
@@ -1453,6 +1655,7 @@ export interface CustomerTaxID {
1453
1655
  | 'pe_ruc'
1454
1656
  | 'ph_tin'
1455
1657
  | 'pl_nip'
1658
+ | 'py_ruc'
1456
1659
  | 'ro_tin'
1457
1660
  | 'rs_pib'
1458
1661
  | 'ru_inn'
@@ -1490,7 +1693,82 @@ export interface DimensionalPriceConfiguration {
1490
1693
  dimensional_price_group_id: string;
1491
1694
  }
1492
1695
 
1493
- export type Discount = PercentageDiscount | TrialDiscount | UsageDiscount | AmountDiscount;
1696
+ export type Discount =
1697
+ | PercentageDiscount
1698
+ | TrialDiscount
1699
+ | UsageDiscount
1700
+ | AmountDiscount
1701
+ | Discount.TieredPercentageDiscount;
1702
+
1703
+ export namespace Discount {
1704
+ export interface TieredPercentageDiscount {
1705
+ discount_type: 'tiered_percentage';
1706
+
1707
+ /**
1708
+ * Only available if discount_type is `tiered_percentage`. The ordered, contiguous
1709
+ * bands of cumulative eligible spend, each discounted at its own percentage
1710
+ * (progressive fill-a-tier).
1711
+ */
1712
+ tiers: Array<TieredPercentageDiscount.Tier>;
1713
+
1714
+ /**
1715
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
1716
+ * this can be a subset of prices.
1717
+ */
1718
+ applies_to_price_ids?: Array<string> | null;
1719
+
1720
+ /**
1721
+ * The filters that determine which prices to apply this discount to.
1722
+ */
1723
+ filters?: Array<TieredPercentageDiscount.Filter> | null;
1724
+
1725
+ reason?: string | null;
1726
+ }
1727
+
1728
+ export namespace TieredPercentageDiscount {
1729
+ /**
1730
+ * One band of a tiered percentage discount. Bounds are denominated in the
1731
+ * discount's currency. `lower_bound` is the exclusive start of the band and
1732
+ * `upper_bound` is the inclusive end; `upper_bound` is null only for the
1733
+ * open-ended final tier.
1734
+ */
1735
+ export interface Tier {
1736
+ /**
1737
+ * Exclusive lower bound of cumulative spend for this tier.
1738
+ */
1739
+ lower_bound: number;
1740
+
1741
+ /**
1742
+ * The percentage (between 0 and 1) discounted from spend that falls within this
1743
+ * tier.
1744
+ */
1745
+ percentage: number;
1746
+
1747
+ /**
1748
+ * Inclusive upper bound of cumulative spend for this tier; null for the final
1749
+ * open-ended tier.
1750
+ */
1751
+ upper_bound?: number | null;
1752
+ }
1753
+
1754
+ export interface Filter {
1755
+ /**
1756
+ * The property of the price to filter on.
1757
+ */
1758
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
1759
+
1760
+ /**
1761
+ * Should prices that match the filter be included or excluded.
1762
+ */
1763
+ operator: 'includes' | 'excludes';
1764
+
1765
+ /**
1766
+ * The IDs or values that match this filter.
1767
+ */
1768
+ values: Array<string>;
1769
+ }
1770
+ }
1771
+ }
1494
1772
 
1495
1773
  export interface FixedFeeQuantityScheduleEntry {
1496
1774
  end_date: string | null;
@@ -1607,11 +1885,13 @@ export interface Invoice {
1607
1885
  * | Estonia | `eu_vat` | European VAT Number |
1608
1886
  * | Ethiopia | `et_tin` | Ethiopia Tax Identification Number |
1609
1887
  * | European Union | `eu_oss_vat` | European One Stop Shop VAT Number for non-Union scheme |
1888
+ * | Faroe Islands | `fo_vat` | Faroe Islands VAT Number |
1610
1889
  * | Finland | `eu_vat` | European VAT Number |
1611
1890
  * | France | `eu_vat` | European VAT Number |
1612
1891
  * | Georgia | `ge_vat` | Georgian VAT |
1613
1892
  * | Germany | `de_stn` | German Tax Number (Steuernummer) |
1614
1893
  * | Germany | `eu_vat` | European VAT Number |
1894
+ * | Gibraltar | `gi_tin` | Gibraltar Tax Identification Number |
1615
1895
  * | Greece | `eu_vat` | European VAT Number |
1616
1896
  * | Guinea | `gn_nif` | Guinea Tax Identification Number (Número de Identificação Fiscal) |
1617
1897
  * | Hong Kong | `hk_br` | Hong Kong BR Number |
@@ -1623,6 +1903,7 @@ export interface Invoice {
1623
1903
  * | Ireland | `eu_vat` | European VAT Number |
1624
1904
  * | Israel | `il_vat` | Israel VAT |
1625
1905
  * | Italy | `eu_vat` | European VAT Number |
1906
+ * | Italy | `it_cf` | Italian Codice Fiscale Number |
1626
1907
  * | Japan | `jp_cn` | Japanese Corporate Number (_Hōjin Bangō_) |
1627
1908
  * | Japan | `jp_rn` | Japanese Registered Foreign Businesses' Registration Number (_Tōroku Kokugai Jigyōsha no Tōroku Bangō_) |
1628
1909
  * | Japan | `jp_trn` | Japanese Tax Registration Number (_Tōroku Bangō_) |
@@ -1653,6 +1934,7 @@ export interface Invoice {
1653
1934
  * | Norway | `no_vat` | Norwegian VAT Number |
1654
1935
  * | Norway | `no_voec` | Norwegian VAT on e-commerce Number |
1655
1936
  * | Oman | `om_vat` | Omani VAT Number |
1937
+ * | Paraguay | `py_ruc` | Paraguayan RUC Number |
1656
1938
  * | Peru | `pe_ruc` | Peruvian RUC Number |
1657
1939
  * | Philippines | `ph_tin` | Philippines Tax Identification Number |
1658
1940
  * | Poland | `eu_vat` | European VAT Number |
@@ -1674,6 +1956,7 @@ export interface Invoice {
1674
1956
  * | South Korea | `kr_brn` | Korean BRN |
1675
1957
  * | Spain | `es_cif` | Spanish NIF Number (previously Spanish CIF Number) |
1676
1958
  * | Spain | `eu_vat` | European VAT Number |
1959
+ * | Sri Lanka | `lk_vat` | Sri Lanka VAT Number |
1677
1960
  * | Suriname | `sr_fin` | Suriname FIN Number |
1678
1961
  * | Sweden | `eu_vat` | European VAT Number |
1679
1962
  * | Switzerland | `ch_uid` | Switzerland UID Number |
@@ -1721,8 +2004,8 @@ export interface Invoice {
1721
2004
  eligible_to_issue_at: string | null;
1722
2005
 
1723
2006
  /**
1724
- * A URL for the customer-facing invoice portal. This URL expires 30 days after the
1725
- * invoice's due date, or 60 days after being re-generated through the UI.
2007
+ * A URL for the customer-facing invoice portal. This URL expires 60 days after the
2008
+ * link is generated, or 30 days after the invoice's due date — whichever is later.
1726
2009
  */
1727
2010
  hosted_invoice_url: string | null;
1728
2011
 
@@ -1975,6 +2258,7 @@ export namespace Invoice {
1975
2258
  | Shared.MonetaryUsageDiscountAdjustment
1976
2259
  | Shared.MonetaryAmountDiscountAdjustment
1977
2260
  | Shared.MonetaryPercentageDiscountAdjustment
2261
+ | LineItem.MonetaryTieredPercentageDiscountAdjustment
1978
2262
  | Shared.MonetaryMinimumAdjustment
1979
2263
  | Shared.MonetaryMaximumAdjustment
1980
2264
  >;
@@ -2064,6 +2348,97 @@ export namespace Invoice {
2064
2348
  usage_customer_ids: Array<string> | null;
2065
2349
  }
2066
2350
 
2351
+ export namespace LineItem {
2352
+ export interface MonetaryTieredPercentageDiscountAdjustment {
2353
+ id: string;
2354
+
2355
+ adjustment_type: 'tiered_percentage_discount';
2356
+
2357
+ /**
2358
+ * The value applied by an adjustment.
2359
+ */
2360
+ amount: string;
2361
+
2362
+ /**
2363
+ * @deprecated The price IDs that this adjustment applies to.
2364
+ */
2365
+ applies_to_price_ids: Array<string>;
2366
+
2367
+ /**
2368
+ * The filters that determine which prices to apply this adjustment to.
2369
+ */
2370
+ filters: Array<MonetaryTieredPercentageDiscountAdjustment.Filter>;
2371
+
2372
+ /**
2373
+ * True for adjustments that apply to an entire invoice, false for adjustments that
2374
+ * apply to only one price.
2375
+ */
2376
+ is_invoice_level: boolean;
2377
+
2378
+ /**
2379
+ * The reason for the adjustment.
2380
+ */
2381
+ reason: string | null;
2382
+
2383
+ /**
2384
+ * The adjustment id this adjustment replaces. This adjustment will take the place
2385
+ * of the replaced adjustment in plan version migrations.
2386
+ */
2387
+ replaces_adjustment_id: string | null;
2388
+
2389
+ /**
2390
+ * The ordered, contiguous bands of cumulative eligible spend, each discounted at
2391
+ * its own percentage (progressive fill-a-tier), applied to the prices this
2392
+ * adjustment covers in a given billing period.
2393
+ */
2394
+ tiers: Array<MonetaryTieredPercentageDiscountAdjustment.Tier>;
2395
+ }
2396
+
2397
+ export namespace MonetaryTieredPercentageDiscountAdjustment {
2398
+ export interface Filter {
2399
+ /**
2400
+ * The property of the price to filter on.
2401
+ */
2402
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
2403
+
2404
+ /**
2405
+ * Should prices that match the filter be included or excluded.
2406
+ */
2407
+ operator: 'includes' | 'excludes';
2408
+
2409
+ /**
2410
+ * The IDs or values that match this filter.
2411
+ */
2412
+ values: Array<string>;
2413
+ }
2414
+
2415
+ /**
2416
+ * One band of a tiered percentage discount. Bounds are denominated in the
2417
+ * discount's currency. `lower_bound` is the exclusive start of the band and
2418
+ * `upper_bound` is the inclusive end; `upper_bound` is null only for the
2419
+ * open-ended final tier.
2420
+ */
2421
+ export interface Tier {
2422
+ /**
2423
+ * Exclusive lower bound of cumulative spend for this tier.
2424
+ */
2425
+ lower_bound: number;
2426
+
2427
+ /**
2428
+ * The percentage (between 0 and 1) discounted from spend that falls within this
2429
+ * tier.
2430
+ */
2431
+ percentage: number;
2432
+
2433
+ /**
2434
+ * Inclusive upper bound of cumulative spend for this tier; null for the final
2435
+ * open-ended tier.
2436
+ */
2437
+ upper_bound?: number | null;
2438
+ }
2439
+ }
2440
+ }
2441
+
2067
2442
  export interface PaymentAttempt {
2068
2443
  /**
2069
2444
  * The ID of the payment attempt.
@@ -2083,7 +2458,7 @@ export namespace Invoice {
2083
2458
  /**
2084
2459
  * The payment provider that attempted to collect the payment.
2085
2460
  */
2086
- payment_provider: 'stripe' | null;
2461
+ payment_provider: 'stripe' | 'adyen' | null;
2087
2462
 
2088
2463
  /**
2089
2464
  * The ID of the payment attempt in the payment provider.
@@ -2103,7 +2478,81 @@ export namespace Invoice {
2103
2478
  }
2104
2479
  }
2105
2480
 
2106
- export type InvoiceLevelDiscount = PercentageDiscount | AmountDiscount | TrialDiscount;
2481
+ export type InvoiceLevelDiscount =
2482
+ | PercentageDiscount
2483
+ | AmountDiscount
2484
+ | TrialDiscount
2485
+ | InvoiceLevelDiscount.TieredPercentageDiscount;
2486
+
2487
+ export namespace InvoiceLevelDiscount {
2488
+ export interface TieredPercentageDiscount {
2489
+ discount_type: 'tiered_percentage';
2490
+
2491
+ /**
2492
+ * Only available if discount_type is `tiered_percentage`. The ordered, contiguous
2493
+ * bands of cumulative eligible spend, each discounted at its own percentage
2494
+ * (progressive fill-a-tier).
2495
+ */
2496
+ tiers: Array<TieredPercentageDiscount.Tier>;
2497
+
2498
+ /**
2499
+ * List of price_ids that this discount applies to. For plan/plan phase discounts,
2500
+ * this can be a subset of prices.
2501
+ */
2502
+ applies_to_price_ids?: Array<string> | null;
2503
+
2504
+ /**
2505
+ * The filters that determine which prices to apply this discount to.
2506
+ */
2507
+ filters?: Array<TieredPercentageDiscount.Filter> | null;
2508
+
2509
+ reason?: string | null;
2510
+ }
2511
+
2512
+ export namespace TieredPercentageDiscount {
2513
+ /**
2514
+ * One band of a tiered percentage discount. Bounds are denominated in the
2515
+ * discount's currency. `lower_bound` is the exclusive start of the band and
2516
+ * `upper_bound` is the inclusive end; `upper_bound` is null only for the
2517
+ * open-ended final tier.
2518
+ */
2519
+ export interface Tier {
2520
+ /**
2521
+ * Exclusive lower bound of cumulative spend for this tier.
2522
+ */
2523
+ lower_bound: number;
2524
+
2525
+ /**
2526
+ * The percentage (between 0 and 1) discounted from spend that falls within this
2527
+ * tier.
2528
+ */
2529
+ percentage: number;
2530
+
2531
+ /**
2532
+ * Inclusive upper bound of cumulative spend for this tier; null for the final
2533
+ * open-ended tier.
2534
+ */
2535
+ upper_bound?: number | null;
2536
+ }
2537
+
2538
+ export interface Filter {
2539
+ /**
2540
+ * The property of the price to filter on.
2541
+ */
2542
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
2543
+
2544
+ /**
2545
+ * Should prices that match the filter be included or excluded.
2546
+ */
2547
+ operator: 'includes' | 'excludes';
2548
+
2549
+ /**
2550
+ * The IDs or values that match this filter.
2551
+ */
2552
+ values: Array<string>;
2553
+ }
2554
+ }
2555
+ }
2107
2556
 
2108
2557
  export interface InvoiceTiny {
2109
2558
  /**
@@ -2762,6 +3211,13 @@ export interface NewAllocationPrice {
2762
3211
  */
2763
3212
  license_type_id?: string | null;
2764
3213
 
3214
+ /**
3215
+ * User-specified key/value pairs for the resource. Individual keys can be removed
3216
+ * by setting the value to `null`, and the entire metadata mapping can be cleared
3217
+ * by setting `metadata` to `null`.
3218
+ */
3219
+ metadata?: { [key: string]: string | null } | null;
3220
+
2765
3221
  /**
2766
3222
  * The (per-unit) cost basis of each created block. If non-zero, a customer will be
2767
3223
  * invoiced according to the quantity and per unit cost basis specified for the
@@ -10076,6 +10532,7 @@ export type Price =
10076
10532
  | Price.PackageWithAllocationPrice
10077
10533
  | Price.UnitWithPercentPrice
10078
10534
  | Price.MatrixWithAllocationPrice
10535
+ | Price.MatrixWithThresholdDiscountsPrice
10079
10536
  | Price.TieredWithProrationPrice
10080
10537
  | Price.UnitWithProrationPrice
10081
10538
  | Price.GroupedAllocationPrice
@@ -10090,6 +10547,8 @@ export type Price =
10090
10547
  | Price.ScalableMatrixWithTieredPricingPrice
10091
10548
  | Price.CumulativeGroupedBulkPrice
10092
10549
  | Price.CumulativeGroupedAllocationPrice
10550
+ | Price.DailyCreditAllowancePrice
10551
+ | Price.MeteredAllowancePrice
10093
10552
  | Price.MinimumCompositePrice
10094
10553
  | Price.PercentCompositePrice
10095
10554
  | Price.EventOutputPrice;
@@ -10127,6 +10586,8 @@ export namespace Price {
10127
10586
 
10128
10587
  fixed_price_quantity: number | null;
10129
10588
 
10589
+ invoice_grouping_key: string | null;
10590
+
10130
10591
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
10131
10592
 
10132
10593
  /**
@@ -10269,6 +10730,8 @@ export namespace Price {
10269
10730
 
10270
10731
  fixed_price_quantity: number | null;
10271
10732
 
10733
+ invoice_grouping_key: string | null;
10734
+
10272
10735
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
10273
10736
 
10274
10737
  /**
@@ -10416,6 +10879,8 @@ export namespace Price {
10416
10879
 
10417
10880
  fixed_price_quantity: number | null;
10418
10881
 
10882
+ invoice_grouping_key: string | null;
10883
+
10419
10884
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
10420
10885
 
10421
10886
  /**
@@ -10558,6 +11023,8 @@ export namespace Price {
10558
11023
 
10559
11024
  fixed_price_quantity: number | null;
10560
11025
 
11026
+ invoice_grouping_key: string | null;
11027
+
10561
11028
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
10562
11029
 
10563
11030
  /**
@@ -10742,6 +11209,8 @@ export namespace Price {
10742
11209
 
10743
11210
  fixed_price_quantity: number | null;
10744
11211
 
11212
+ invoice_grouping_key: string | null;
11213
+
10745
11214
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
10746
11215
 
10747
11216
  /**
@@ -10884,6 +11353,8 @@ export namespace Price {
10884
11353
 
10885
11354
  fixed_price_quantity: number | null;
10886
11355
 
11356
+ invoice_grouping_key: string | null;
11357
+
10887
11358
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
10888
11359
 
10889
11360
  /**
@@ -11026,6 +11497,8 @@ export namespace Price {
11026
11497
 
11027
11498
  fixed_price_quantity: number | null;
11028
11499
 
11500
+ invoice_grouping_key: string | null;
11501
+
11029
11502
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
11030
11503
 
11031
11504
  /**
@@ -11198,6 +11671,8 @@ export namespace Price {
11198
11671
 
11199
11672
  fixed_price_quantity: number | null;
11200
11673
 
11674
+ invoice_grouping_key: string | null;
11675
+
11201
11676
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
11202
11677
 
11203
11678
  /**
@@ -11369,6 +11844,8 @@ export namespace Price {
11369
11844
 
11370
11845
  fixed_price_quantity: number | null;
11371
11846
 
11847
+ invoice_grouping_key: string | null;
11848
+
11372
11849
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
11373
11850
 
11374
11851
  /**
@@ -11553,6 +12030,8 @@ export namespace Price {
11553
12030
  */
11554
12031
  grouped_tiered_config: GroupedTieredPrice.GroupedTieredConfig;
11555
12032
 
12033
+ invoice_grouping_key: string | null;
12034
+
11556
12035
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
11557
12036
 
11558
12037
  /**
@@ -11720,6 +12199,8 @@ export namespace Price {
11720
12199
 
11721
12200
  fixed_price_quantity: number | null;
11722
12201
 
12202
+ invoice_grouping_key: string | null;
12203
+
11723
12204
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
11724
12205
 
11725
12206
  /**
@@ -11888,6 +12369,8 @@ export namespace Price {
11888
12369
 
11889
12370
  fixed_price_quantity: number | null;
11890
12371
 
12372
+ invoice_grouping_key: string | null;
12373
+
11891
12374
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
11892
12375
 
11893
12376
  /**
@@ -12041,6 +12524,8 @@ export namespace Price {
12041
12524
 
12042
12525
  fixed_price_quantity: number | null;
12043
12526
 
12527
+ invoice_grouping_key: string | null;
12528
+
12044
12529
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
12045
12530
 
12046
12531
  /**
@@ -12198,6 +12683,8 @@ export namespace Price {
12198
12683
 
12199
12684
  fixed_price_quantity: number | null;
12200
12685
 
12686
+ invoice_grouping_key: string | null;
12687
+
12201
12688
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
12202
12689
 
12203
12690
  /**
@@ -12308,7 +12795,7 @@ export namespace Price {
12308
12795
  }
12309
12796
  }
12310
12797
 
12311
- export interface TieredWithProrationPrice {
12798
+ export interface MatrixWithThresholdDiscountsPrice {
12312
12799
  id: string;
12313
12800
 
12314
12801
  billable_metric: Shared.BillableMetricTiny | null;
@@ -12319,7 +12806,7 @@ export namespace Price {
12319
12806
 
12320
12807
  cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom';
12321
12808
 
12322
- composite_price_filters: Array<TieredWithProrationPrice.CompositePriceFilter> | null;
12809
+ composite_price_filters: Array<MatrixWithThresholdDiscountsPrice.CompositePriceFilter> | null;
12323
12810
 
12324
12811
  conversion_rate: number | null;
12325
12812
 
@@ -12340,6 +12827,213 @@ export namespace Price {
12340
12827
 
12341
12828
  fixed_price_quantity: number | null;
12342
12829
 
12830
+ invoice_grouping_key: string | null;
12831
+
12832
+ invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
12833
+
12834
+ /**
12835
+ * A minimal representation of an Item containing only the essential identifying
12836
+ * information.
12837
+ */
12838
+ item: Shared.ItemSlim;
12839
+
12840
+ /**
12841
+ * Configuration for matrix_with_threshold_discounts pricing
12842
+ */
12843
+ matrix_with_threshold_discounts_config: MatrixWithThresholdDiscountsPrice.MatrixWithThresholdDiscountsConfig;
12844
+
12845
+ /**
12846
+ * @deprecated
12847
+ */
12848
+ maximum: Shared.Maximum | null;
12849
+
12850
+ /**
12851
+ * @deprecated
12852
+ */
12853
+ maximum_amount: string | null;
12854
+
12855
+ /**
12856
+ * User specified key-value pairs for the resource. If not present, this defaults
12857
+ * to an empty dictionary. Individual keys can be removed by setting the value to
12858
+ * `null`, and the entire metadata mapping can be cleared by setting `metadata` to
12859
+ * `null`.
12860
+ */
12861
+ metadata: { [key: string]: string };
12862
+
12863
+ /**
12864
+ * @deprecated
12865
+ */
12866
+ minimum: Shared.Minimum | null;
12867
+
12868
+ /**
12869
+ * @deprecated
12870
+ */
12871
+ minimum_amount: string | null;
12872
+
12873
+ /**
12874
+ * The pricing model type
12875
+ */
12876
+ model_type: 'matrix_with_threshold_discounts';
12877
+
12878
+ name: string;
12879
+
12880
+ plan_phase_order: number | null;
12881
+
12882
+ price_type: 'usage_price' | 'fixed_price' | 'composite_price';
12883
+
12884
+ /**
12885
+ * The price id this price replaces. This price will take the place of the replaced
12886
+ * price in plan version migrations.
12887
+ */
12888
+ replaces_price_id: string | null;
12889
+
12890
+ dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
12891
+
12892
+ /**
12893
+ * The LicenseType resource represents a type of license that can be assigned to
12894
+ * users. License types are used during billing by grouping metrics on the
12895
+ * configured grouping key.
12896
+ */
12897
+ license_type?: MatrixWithThresholdDiscountsPrice.LicenseType | null;
12898
+ }
12899
+
12900
+ export namespace MatrixWithThresholdDiscountsPrice {
12901
+ export interface CompositePriceFilter {
12902
+ /**
12903
+ * The property of the price to filter on.
12904
+ */
12905
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
12906
+
12907
+ /**
12908
+ * Should prices that match the filter be included or excluded.
12909
+ */
12910
+ operator: 'includes' | 'excludes';
12911
+
12912
+ /**
12913
+ * The IDs or values that match this filter.
12914
+ */
12915
+ values: Array<string>;
12916
+ }
12917
+
12918
+ /**
12919
+ * Configuration for matrix_with_threshold_discounts pricing
12920
+ */
12921
+ export interface MatrixWithThresholdDiscountsConfig {
12922
+ /**
12923
+ * Unit price used for usage that does not match any defined matrix cell.
12924
+ */
12925
+ default_unit_amount: string;
12926
+
12927
+ /**
12928
+ * First matrix dimension key.
12929
+ */
12930
+ first_dimension: string;
12931
+
12932
+ /**
12933
+ * Per-cell unit prices.
12934
+ */
12935
+ matrix_values: Array<MatrixWithThresholdDiscountsConfig.MatrixValue>;
12936
+
12937
+ /**
12938
+ * Optional second matrix dimension key.
12939
+ */
12940
+ second_dimension?: string | null;
12941
+
12942
+ threshold_discount_groups?: Array<MatrixWithThresholdDiscountsConfig.ThresholdDiscountGroup>;
12943
+ }
12944
+
12945
+ export namespace MatrixWithThresholdDiscountsConfig {
12946
+ export interface MatrixValue {
12947
+ first_dimension_value: string;
12948
+
12949
+ unit_amount: string;
12950
+
12951
+ second_dimension_value?: string | null;
12952
+ }
12953
+
12954
+ export interface ThresholdDiscountGroup {
12955
+ /**
12956
+ * Discount rate applied to spend above the threshold.
12957
+ */
12958
+ above_threshold_discount_percentage: string;
12959
+
12960
+ /**
12961
+ * Discount rate applied to spend at or below the threshold. Set to 0 for no
12962
+ * baseline discount.
12963
+ */
12964
+ below_threshold_discount_percentage: string;
12965
+
12966
+ /**
12967
+ * Semicolon-separated list of matrix cell coordinates targeted by this group. Each
12968
+ * coordinate is `first,second` when the matrix has two dimensions, or just `first`
12969
+ * for a single-dimension matrix. Example: `blue,circle;green,triangle`.
12970
+ */
12971
+ cell_coordinates: string;
12972
+
12973
+ threshold_amount: string;
12974
+
12975
+ description?: string | null;
12976
+ }
12977
+ }
12978
+
12979
+ /**
12980
+ * The LicenseType resource represents a type of license that can be assigned to
12981
+ * users. License types are used during billing by grouping metrics on the
12982
+ * configured grouping key.
12983
+ */
12984
+ export interface LicenseType {
12985
+ /**
12986
+ * The Orb-assigned unique identifier for the license type.
12987
+ */
12988
+ id: string;
12989
+
12990
+ /**
12991
+ * The key used for grouping licenses of this type. This is typically a user
12992
+ * identifier field.
12993
+ */
12994
+ grouping_key: string;
12995
+
12996
+ /**
12997
+ * The name of the license type.
12998
+ */
12999
+ name: string;
13000
+ }
13001
+ }
13002
+
13003
+ export interface TieredWithProrationPrice {
13004
+ id: string;
13005
+
13006
+ billable_metric: Shared.BillableMetricTiny | null;
13007
+
13008
+ billing_cycle_configuration: Shared.BillingCycleConfiguration;
13009
+
13010
+ billing_mode: 'in_advance' | 'in_arrear';
13011
+
13012
+ cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom';
13013
+
13014
+ composite_price_filters: Array<TieredWithProrationPrice.CompositePriceFilter> | null;
13015
+
13016
+ conversion_rate: number | null;
13017
+
13018
+ conversion_rate_config: Shared.UnitConversionRateConfig | Shared.TieredConversionRateConfig | null;
13019
+
13020
+ created_at: string;
13021
+
13022
+ credit_allocation: Shared.Allocation | null;
13023
+
13024
+ currency: string;
13025
+
13026
+ /**
13027
+ * @deprecated
13028
+ */
13029
+ discount: Shared.Discount | null;
13030
+
13031
+ external_price_id: string | null;
13032
+
13033
+ fixed_price_quantity: number | null;
13034
+
13035
+ invoice_grouping_key: string | null;
13036
+
12343
13037
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
12344
13038
 
12345
13039
  /**
@@ -12510,6 +13204,8 @@ export namespace Price {
12510
13204
 
12511
13205
  fixed_price_quantity: number | null;
12512
13206
 
13207
+ invoice_grouping_key: string | null;
13208
+
12513
13209
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
12514
13210
 
12515
13211
  /**
@@ -12667,6 +13363,8 @@ export namespace Price {
12667
13363
  */
12668
13364
  grouped_allocation_config: GroupedAllocationPrice.GroupedAllocationConfig;
12669
13365
 
13366
+ invoice_grouping_key: string | null;
13367
+
12670
13368
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
12671
13369
 
12672
13370
  /**
@@ -12829,6 +13527,8 @@ export namespace Price {
12829
13527
 
12830
13528
  fixed_price_quantity: number | null;
12831
13529
 
13530
+ invoice_grouping_key: string | null;
13531
+
12832
13532
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
12833
13533
 
12834
13534
  /**
@@ -12998,6 +13698,8 @@ export namespace Price {
12998
13698
  */
12999
13699
  grouped_with_prorated_minimum_config: GroupedWithProratedMinimumPrice.GroupedWithProratedMinimumConfig;
13000
13700
 
13701
+ invoice_grouping_key: string | null;
13702
+
13001
13703
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
13002
13704
 
13003
13705
  /**
@@ -13160,6 +13862,8 @@ export namespace Price {
13160
13862
  */
13161
13863
  grouped_with_metered_minimum_config: GroupedWithMeteredMinimumPrice.GroupedWithMeteredMinimumConfig;
13162
13864
 
13865
+ invoice_grouping_key: string | null;
13866
+
13163
13867
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
13164
13868
 
13165
13869
  /**
@@ -13362,6 +14066,8 @@ export namespace Price {
13362
14066
  */
13363
14067
  grouped_with_min_max_thresholds_config: GroupedWithMinMaxThresholdsPrice.GroupedWithMinMaxThresholdsConfig;
13364
14068
 
14069
+ invoice_grouping_key: string | null;
14070
+
13365
14071
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
13366
14072
 
13367
14073
  /**
@@ -13524,6 +14230,8 @@ export namespace Price {
13524
14230
 
13525
14231
  fixed_price_quantity: number | null;
13526
14232
 
14233
+ invoice_grouping_key: string | null;
14234
+
13527
14235
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
13528
14236
 
13529
14237
  /**
@@ -13708,6 +14416,8 @@ export namespace Price {
13708
14416
  */
13709
14417
  grouped_tiered_package_config: GroupedTieredPackagePrice.GroupedTieredPackageConfig;
13710
14418
 
14419
+ invoice_grouping_key: string | null;
14420
+
13711
14421
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
13712
14422
 
13713
14423
  /**
@@ -13877,6 +14587,8 @@ export namespace Price {
13877
14587
 
13878
14588
  fixed_price_quantity: number | null;
13879
14589
 
14590
+ invoice_grouping_key: string | null;
14591
+
13880
14592
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
13881
14593
 
13882
14594
  /**
@@ -14050,6 +14762,8 @@ export namespace Price {
14050
14762
 
14051
14763
  fixed_price_quantity: number | null;
14052
14764
 
14765
+ invoice_grouping_key: string | null;
14766
+
14053
14767
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
14054
14768
 
14055
14769
  /**
@@ -14240,6 +14954,8 @@ export namespace Price {
14240
14954
 
14241
14955
  fixed_price_quantity: number | null;
14242
14956
 
14957
+ invoice_grouping_key: string | null;
14958
+
14243
14959
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
14244
14960
 
14245
14961
  /**
@@ -14431,6 +15147,8 @@ export namespace Price {
14431
15147
 
14432
15148
  fixed_price_quantity: number | null;
14433
15149
 
15150
+ invoice_grouping_key: string | null;
15151
+
14434
15152
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
14435
15153
 
14436
15154
  /**
@@ -14607,6 +15325,8 @@ export namespace Price {
14607
15325
 
14608
15326
  fixed_price_quantity: number | null;
14609
15327
 
15328
+ invoice_grouping_key: string | null;
15329
+
14610
15330
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
14611
15331
 
14612
15332
  /**
@@ -14737,7 +15457,7 @@ export namespace Price {
14737
15457
  }
14738
15458
  }
14739
15459
 
14740
- export interface MinimumCompositePrice {
15460
+ export interface DailyCreditAllowancePrice {
14741
15461
  id: string;
14742
15462
 
14743
15463
  billable_metric: Shared.BillableMetricTiny | null;
@@ -14748,7 +15468,7 @@ export namespace Price {
14748
15468
 
14749
15469
  cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom';
14750
15470
 
14751
- composite_price_filters: Array<MinimumCompositePrice.CompositePriceFilter> | null;
15471
+ composite_price_filters: Array<DailyCreditAllowancePrice.CompositePriceFilter> | null;
14752
15472
 
14753
15473
  conversion_rate: number | null;
14754
15474
 
@@ -14760,6 +15480,11 @@ export namespace Price {
14760
15480
 
14761
15481
  currency: string;
14762
15482
 
15483
+ /**
15484
+ * Configuration for daily_credit_allowance pricing
15485
+ */
15486
+ daily_credit_allowance_config: DailyCreditAllowancePrice.DailyCreditAllowanceConfig;
15487
+
14763
15488
  /**
14764
15489
  * @deprecated
14765
15490
  */
@@ -14769,6 +15494,8 @@ export namespace Price {
14769
15494
 
14770
15495
  fixed_price_quantity: number | null;
14771
15496
 
15497
+ invoice_grouping_key: string | null;
15498
+
14772
15499
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
14773
15500
 
14774
15501
  /**
@@ -14805,15 +15532,10 @@ export namespace Price {
14805
15532
  */
14806
15533
  minimum_amount: string | null;
14807
15534
 
14808
- /**
14809
- * Configuration for minimum_composite pricing
14810
- */
14811
- minimum_composite_config: MinimumCompositePrice.MinimumCompositeConfig;
14812
-
14813
15535
  /**
14814
15536
  * The pricing model type
14815
15537
  */
14816
- model_type: 'minimum_composite';
15538
+ model_type: 'daily_credit_allowance';
14817
15539
 
14818
15540
  name: string;
14819
15541
 
@@ -14834,10 +15556,10 @@ export namespace Price {
14834
15556
  * users. License types are used during billing by grouping metrics on the
14835
15557
  * configured grouping key.
14836
15558
  */
14837
- license_type?: MinimumCompositePrice.LicenseType | null;
15559
+ license_type?: DailyCreditAllowancePrice.LicenseType | null;
14838
15560
  }
14839
15561
 
14840
- export namespace MinimumCompositePrice {
15562
+ export namespace DailyCreditAllowancePrice {
14841
15563
  export interface CompositePriceFilter {
14842
15564
  /**
14843
15565
  * The property of the price to filter on.
@@ -14856,18 +15578,54 @@ export namespace Price {
14856
15578
  }
14857
15579
 
14858
15580
  /**
14859
- * Configuration for minimum_composite pricing
15581
+ * Configuration for daily_credit_allowance pricing
14860
15582
  */
14861
- export interface MinimumCompositeConfig {
15583
+ export interface DailyCreditAllowanceConfig {
14862
15584
  /**
14863
- * The minimum amount to apply
15585
+ * Credits granted per day. Lose-it-or-use-it; does not roll over.
14864
15586
  */
14865
- minimum_amount: string;
15587
+ daily_allowance: string;
14866
15588
 
14867
15589
  /**
14868
- * If true, subtotals from this price are prorated based on the service period
15590
+ * Default per-unit credit rate for any usage not bucketed into a specified
15591
+ * matrix_value
14869
15592
  */
14870
- prorated?: boolean;
15593
+ default_unit_amount: string;
15594
+
15595
+ /**
15596
+ * One or two event property values to evaluate matrix groups by
15597
+ */
15598
+ dimensions: Array<string | null>;
15599
+
15600
+ /**
15601
+ * Event property whose value identifies the day bucket the event belongs to (e.g.
15602
+ * 'event_day' set to an ISO date string in the customer's timezone). The allowance
15603
+ * resets per distinct value of this property.
15604
+ */
15605
+ event_day_property: string;
15606
+
15607
+ /**
15608
+ * Per-dimension credit rates
15609
+ */
15610
+ matrix_values: Array<DailyCreditAllowanceConfig.MatrixValue>;
15611
+ }
15612
+
15613
+ export namespace DailyCreditAllowanceConfig {
15614
+ /**
15615
+ * Per-dimension credit price for the daily credit allowance model.
15616
+ */
15617
+ export interface MatrixValue {
15618
+ /**
15619
+ * One or two matrix keys to filter usage to this value by. For example, ["model"]
15620
+ * could be used to apply a different credit rate to each AI model.
15621
+ */
15622
+ dimension_values: Array<string | null>;
15623
+
15624
+ /**
15625
+ * Credits charged per unit of usage matching the specified dimension_values
15626
+ */
15627
+ unit_amount: string;
15628
+ }
14871
15629
  }
14872
15630
 
14873
15631
  /**
@@ -14894,7 +15652,7 @@ export namespace Price {
14894
15652
  }
14895
15653
  }
14896
15654
 
14897
- export interface PercentCompositePrice {
15655
+ export interface MeteredAllowancePrice {
14898
15656
  id: string;
14899
15657
 
14900
15658
  billable_metric: Shared.BillableMetricTiny | null;
@@ -14905,7 +15663,7 @@ export namespace Price {
14905
15663
 
14906
15664
  cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom';
14907
15665
 
14908
- composite_price_filters: Array<PercentCompositePrice.CompositePriceFilter> | null;
15666
+ composite_price_filters: Array<MeteredAllowancePrice.CompositePriceFilter> | null;
14909
15667
 
14910
15668
  conversion_rate: number | null;
14911
15669
 
@@ -14926,6 +15684,8 @@ export namespace Price {
14926
15684
 
14927
15685
  fixed_price_quantity: number | null;
14928
15686
 
15687
+ invoice_grouping_key: string | null;
15688
+
14929
15689
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
14930
15690
 
14931
15691
  /**
@@ -14952,6 +15712,11 @@ export namespace Price {
14952
15712
  */
14953
15713
  metadata: { [key: string]: string };
14954
15714
 
15715
+ /**
15716
+ * Configuration for metered_allowance pricing
15717
+ */
15718
+ metered_allowance_config: MeteredAllowancePrice.MeteredAllowanceConfig;
15719
+
14955
15720
  /**
14956
15721
  * @deprecated
14957
15722
  */
@@ -14965,15 +15730,10 @@ export namespace Price {
14965
15730
  /**
14966
15731
  * The pricing model type
14967
15732
  */
14968
- model_type: 'percent';
15733
+ model_type: 'metered_allowance';
14969
15734
 
14970
15735
  name: string;
14971
15736
 
14972
- /**
14973
- * Configuration for percent pricing
14974
- */
14975
- percent_config: PercentCompositePrice.PercentConfig;
14976
-
14977
15737
  plan_phase_order: number | null;
14978
15738
 
14979
15739
  price_type: 'usage_price' | 'fixed_price' | 'composite_price';
@@ -14991,10 +15751,10 @@ export namespace Price {
14991
15751
  * users. License types are used during billing by grouping metrics on the
14992
15752
  * configured grouping key.
14993
15753
  */
14994
- license_type?: PercentCompositePrice.LicenseType | null;
15754
+ license_type?: MeteredAllowancePrice.LicenseType | null;
14995
15755
  }
14996
15756
 
14997
- export namespace PercentCompositePrice {
15757
+ export namespace MeteredAllowancePrice {
14998
15758
  export interface CompositePriceFilter {
14999
15759
  /**
15000
15760
  * The property of the price to filter on.
@@ -15013,25 +15773,385 @@ export namespace Price {
15013
15773
  }
15014
15774
 
15015
15775
  /**
15016
- * Configuration for percent pricing
15776
+ * Configuration for metered_allowance pricing
15017
15777
  */
15018
- export interface PercentConfig {
15778
+ export interface MeteredAllowanceConfig {
15019
15779
  /**
15020
- * What percent of the component subtotals to charge
15780
+ * The grouping_key value whose summed quantity represents the allowance for this
15781
+ * period (e.g. 'storage_snapshot' emitting 3 × avg storage). Capped at consumption
15782
+ * — credit can never exceed actual usage.
15021
15783
  */
15022
- percent: number;
15023
- }
15784
+ allowance_grouping_value: string;
15024
15785
 
15025
- /**
15026
- * The LicenseType resource represents a type of license that can be assigned to
15027
- * users. License types are used during billing by grouping metrics on the
15028
- * configured grouping key.
15029
- */
15030
- export interface LicenseType {
15031
15786
  /**
15032
- * The Orb-assigned unique identifier for the license type.
15787
+ * The grouping_key value whose summed quantity represents consumption (e.g.
15788
+ * 'download'). Charged at unit_amount.
15033
15789
  */
15034
- id: string;
15790
+ consumption_grouping_value: string;
15791
+
15792
+ /**
15793
+ * Event property used to partition the metric into consumption and allowance
15794
+ * quantities (e.g. 'event_name'). The metric is queried with this key and the two
15795
+ * values below select which partition is which.
15796
+ */
15797
+ grouping_key: string;
15798
+
15799
+ /**
15800
+ * Per-unit price applied to gross consumption and to the allowance credit.
15801
+ */
15802
+ unit_amount: string;
15803
+
15804
+ /**
15805
+ * Sub-line label for the credit row (e.g. 'Up to 3x free egress').
15806
+ */
15807
+ allowance_display_name?: string;
15808
+
15809
+ /**
15810
+ * Sub-line label for the gross consumption row (e.g. 'bytes gotten').
15811
+ */
15812
+ consumption_display_name?: string;
15813
+ }
15814
+
15815
+ /**
15816
+ * The LicenseType resource represents a type of license that can be assigned to
15817
+ * users. License types are used during billing by grouping metrics on the
15818
+ * configured grouping key.
15819
+ */
15820
+ export interface LicenseType {
15821
+ /**
15822
+ * The Orb-assigned unique identifier for the license type.
15823
+ */
15824
+ id: string;
15825
+
15826
+ /**
15827
+ * The key used for grouping licenses of this type. This is typically a user
15828
+ * identifier field.
15829
+ */
15830
+ grouping_key: string;
15831
+
15832
+ /**
15833
+ * The name of the license type.
15834
+ */
15835
+ name: string;
15836
+ }
15837
+ }
15838
+
15839
+ export interface MinimumCompositePrice {
15840
+ id: string;
15841
+
15842
+ billable_metric: Shared.BillableMetricTiny | null;
15843
+
15844
+ billing_cycle_configuration: Shared.BillingCycleConfiguration;
15845
+
15846
+ billing_mode: 'in_advance' | 'in_arrear';
15847
+
15848
+ cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom';
15849
+
15850
+ composite_price_filters: Array<MinimumCompositePrice.CompositePriceFilter> | null;
15851
+
15852
+ conversion_rate: number | null;
15853
+
15854
+ conversion_rate_config: Shared.UnitConversionRateConfig | Shared.TieredConversionRateConfig | null;
15855
+
15856
+ created_at: string;
15857
+
15858
+ credit_allocation: Shared.Allocation | null;
15859
+
15860
+ currency: string;
15861
+
15862
+ /**
15863
+ * @deprecated
15864
+ */
15865
+ discount: Shared.Discount | null;
15866
+
15867
+ external_price_id: string | null;
15868
+
15869
+ fixed_price_quantity: number | null;
15870
+
15871
+ invoice_grouping_key: string | null;
15872
+
15873
+ invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
15874
+
15875
+ /**
15876
+ * A minimal representation of an Item containing only the essential identifying
15877
+ * information.
15878
+ */
15879
+ item: Shared.ItemSlim;
15880
+
15881
+ /**
15882
+ * @deprecated
15883
+ */
15884
+ maximum: Shared.Maximum | null;
15885
+
15886
+ /**
15887
+ * @deprecated
15888
+ */
15889
+ maximum_amount: string | null;
15890
+
15891
+ /**
15892
+ * User specified key-value pairs for the resource. If not present, this defaults
15893
+ * to an empty dictionary. Individual keys can be removed by setting the value to
15894
+ * `null`, and the entire metadata mapping can be cleared by setting `metadata` to
15895
+ * `null`.
15896
+ */
15897
+ metadata: { [key: string]: string };
15898
+
15899
+ /**
15900
+ * @deprecated
15901
+ */
15902
+ minimum: Shared.Minimum | null;
15903
+
15904
+ /**
15905
+ * @deprecated
15906
+ */
15907
+ minimum_amount: string | null;
15908
+
15909
+ /**
15910
+ * Configuration for minimum_composite pricing
15911
+ */
15912
+ minimum_composite_config: MinimumCompositePrice.MinimumCompositeConfig;
15913
+
15914
+ /**
15915
+ * The pricing model type
15916
+ */
15917
+ model_type: 'minimum_composite';
15918
+
15919
+ name: string;
15920
+
15921
+ plan_phase_order: number | null;
15922
+
15923
+ price_type: 'usage_price' | 'fixed_price' | 'composite_price';
15924
+
15925
+ /**
15926
+ * The price id this price replaces. This price will take the place of the replaced
15927
+ * price in plan version migrations.
15928
+ */
15929
+ replaces_price_id: string | null;
15930
+
15931
+ dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
15932
+
15933
+ /**
15934
+ * The LicenseType resource represents a type of license that can be assigned to
15935
+ * users. License types are used during billing by grouping metrics on the
15936
+ * configured grouping key.
15937
+ */
15938
+ license_type?: MinimumCompositePrice.LicenseType | null;
15939
+ }
15940
+
15941
+ export namespace MinimumCompositePrice {
15942
+ export interface CompositePriceFilter {
15943
+ /**
15944
+ * The property of the price to filter on.
15945
+ */
15946
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
15947
+
15948
+ /**
15949
+ * Should prices that match the filter be included or excluded.
15950
+ */
15951
+ operator: 'includes' | 'excludes';
15952
+
15953
+ /**
15954
+ * The IDs or values that match this filter.
15955
+ */
15956
+ values: Array<string>;
15957
+ }
15958
+
15959
+ /**
15960
+ * Configuration for minimum_composite pricing
15961
+ */
15962
+ export interface MinimumCompositeConfig {
15963
+ /**
15964
+ * The minimum amount to apply
15965
+ */
15966
+ minimum_amount: string;
15967
+
15968
+ /**
15969
+ * If true, subtotals from this price are prorated based on the service period
15970
+ */
15971
+ prorated?: boolean;
15972
+ }
15973
+
15974
+ /**
15975
+ * The LicenseType resource represents a type of license that can be assigned to
15976
+ * users. License types are used during billing by grouping metrics on the
15977
+ * configured grouping key.
15978
+ */
15979
+ export interface LicenseType {
15980
+ /**
15981
+ * The Orb-assigned unique identifier for the license type.
15982
+ */
15983
+ id: string;
15984
+
15985
+ /**
15986
+ * The key used for grouping licenses of this type. This is typically a user
15987
+ * identifier field.
15988
+ */
15989
+ grouping_key: string;
15990
+
15991
+ /**
15992
+ * The name of the license type.
15993
+ */
15994
+ name: string;
15995
+ }
15996
+ }
15997
+
15998
+ export interface PercentCompositePrice {
15999
+ id: string;
16000
+
16001
+ billable_metric: Shared.BillableMetricTiny | null;
16002
+
16003
+ billing_cycle_configuration: Shared.BillingCycleConfiguration;
16004
+
16005
+ billing_mode: 'in_advance' | 'in_arrear';
16006
+
16007
+ cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom';
16008
+
16009
+ composite_price_filters: Array<PercentCompositePrice.CompositePriceFilter> | null;
16010
+
16011
+ conversion_rate: number | null;
16012
+
16013
+ conversion_rate_config: Shared.UnitConversionRateConfig | Shared.TieredConversionRateConfig | null;
16014
+
16015
+ created_at: string;
16016
+
16017
+ credit_allocation: Shared.Allocation | null;
16018
+
16019
+ currency: string;
16020
+
16021
+ /**
16022
+ * @deprecated
16023
+ */
16024
+ discount: Shared.Discount | null;
16025
+
16026
+ external_price_id: string | null;
16027
+
16028
+ fixed_price_quantity: number | null;
16029
+
16030
+ invoice_grouping_key: string | null;
16031
+
16032
+ invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
16033
+
16034
+ /**
16035
+ * A minimal representation of an Item containing only the essential identifying
16036
+ * information.
16037
+ */
16038
+ item: Shared.ItemSlim;
16039
+
16040
+ /**
16041
+ * @deprecated
16042
+ */
16043
+ maximum: Shared.Maximum | null;
16044
+
16045
+ /**
16046
+ * @deprecated
16047
+ */
16048
+ maximum_amount: string | null;
16049
+
16050
+ /**
16051
+ * User specified key-value pairs for the resource. If not present, this defaults
16052
+ * to an empty dictionary. Individual keys can be removed by setting the value to
16053
+ * `null`, and the entire metadata mapping can be cleared by setting `metadata` to
16054
+ * `null`.
16055
+ */
16056
+ metadata: { [key: string]: string };
16057
+
16058
+ /**
16059
+ * @deprecated
16060
+ */
16061
+ minimum: Shared.Minimum | null;
16062
+
16063
+ /**
16064
+ * @deprecated
16065
+ */
16066
+ minimum_amount: string | null;
16067
+
16068
+ /**
16069
+ * The pricing model type
16070
+ */
16071
+ model_type: 'percent';
16072
+
16073
+ name: string;
16074
+
16075
+ /**
16076
+ * Configuration for percent pricing
16077
+ */
16078
+ percent_config: PercentCompositePrice.PercentConfig;
16079
+
16080
+ plan_phase_order: number | null;
16081
+
16082
+ price_type: 'usage_price' | 'fixed_price' | 'composite_price';
16083
+
16084
+ /**
16085
+ * The price id this price replaces. This price will take the place of the replaced
16086
+ * price in plan version migrations.
16087
+ */
16088
+ replaces_price_id: string | null;
16089
+
16090
+ dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null;
16091
+
16092
+ /**
16093
+ * The LicenseType resource represents a type of license that can be assigned to
16094
+ * users. License types are used during billing by grouping metrics on the
16095
+ * configured grouping key.
16096
+ */
16097
+ license_type?: PercentCompositePrice.LicenseType | null;
16098
+ }
16099
+
16100
+ export namespace PercentCompositePrice {
16101
+ export interface CompositePriceFilter {
16102
+ /**
16103
+ * The property of the price to filter on.
16104
+ */
16105
+ field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id';
16106
+
16107
+ /**
16108
+ * Should prices that match the filter be included or excluded.
16109
+ */
16110
+ operator: 'includes' | 'excludes';
16111
+
16112
+ /**
16113
+ * The IDs or values that match this filter.
16114
+ */
16115
+ values: Array<string>;
16116
+ }
16117
+
16118
+ /**
16119
+ * Configuration for percent pricing
16120
+ */
16121
+ export interface PercentConfig {
16122
+ /**
16123
+ * Fraction of the component subtotals to charge (0 < percent <= 1).
16124
+ */
16125
+ percent: number;
16126
+
16127
+ /**
16128
+ * Maximum amount to charge. If unset, the fee has no upper bound.
16129
+ */
16130
+ maximum_amount?: string | null;
16131
+
16132
+ /**
16133
+ * Minimum amount to charge. If unset, the fee is bounded below by 0.
16134
+ */
16135
+ minimum_amount?: string | null;
16136
+
16137
+ /**
16138
+ * If true, the minimum_amount is prorated based on the service period. The
16139
+ * maximum_amount is an absolute cap (never prorated), and the percent applied to
16140
+ * upstream subtotals is never prorated either.
16141
+ */
16142
+ prorated?: boolean;
16143
+ }
16144
+
16145
+ /**
16146
+ * The LicenseType resource represents a type of license that can be assigned to
16147
+ * users. License types are used during billing by grouping metrics on the
16148
+ * configured grouping key.
16149
+ */
16150
+ export interface LicenseType {
16151
+ /**
16152
+ * The Orb-assigned unique identifier for the license type.
16153
+ */
16154
+ id: string;
15035
16155
 
15036
16156
  /**
15037
16157
  * The key used for grouping licenses of this type. This is typically a user
@@ -15083,6 +16203,8 @@ export namespace Price {
15083
16203
 
15084
16204
  fixed_price_quantity: number | null;
15085
16205
 
16206
+ invoice_grouping_key: string | null;
16207
+
15086
16208
  invoicing_cycle_configuration: Shared.BillingCycleConfiguration | null;
15087
16209
 
15088
16210
  /**