orb-billing 1.0.1 → 1.2.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 (160) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +35 -0
  3. data/README.md +1 -1
  4. data/lib/orb/errors.rb +22 -0
  5. data/lib/orb/internal/type/array_of.rb +6 -1
  6. data/lib/orb/internal/type/base_model.rb +79 -25
  7. data/lib/orb/internal/type/boolean.rb +7 -1
  8. data/lib/orb/internal/type/converter.rb +42 -34
  9. data/lib/orb/internal/type/enum.rb +10 -2
  10. data/lib/orb/internal/type/file_input.rb +6 -1
  11. data/lib/orb/internal/type/hash_of.rb +6 -1
  12. data/lib/orb/internal/type/union.rb +12 -7
  13. data/lib/orb/internal/type/unknown.rb +7 -1
  14. data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rb +4 -4
  15. data/lib/orb/models/customers/credits/ledger_create_entry_params.rb +4 -4
  16. data/lib/orb/models/invoice.rb +4 -1
  17. data/lib/orb/models/invoice_fetch_upcoming_response.rb +4 -1
  18. data/lib/orb/models/invoice_line_item_create_response.rb +4 -1
  19. data/lib/orb/models/monetary_amount_discount_adjustment.rb +10 -1
  20. data/lib/orb/models/monetary_maximum_adjustment.rb +10 -1
  21. data/lib/orb/models/monetary_minimum_adjustment.rb +10 -1
  22. data/lib/orb/models/monetary_percentage_discount_adjustment.rb +10 -1
  23. data/lib/orb/models/monetary_usage_discount_adjustment.rb +10 -1
  24. data/lib/orb/models/new_plan_bps_price.rb +10 -1
  25. data/lib/orb/models/new_plan_bulk_bps_price.rb +10 -1
  26. data/lib/orb/models/new_plan_bulk_price.rb +10 -1
  27. data/lib/orb/models/new_plan_bulk_with_proration_price.rb +10 -1
  28. data/lib/orb/models/new_plan_cumulative_grouped_bulk_price.rb +10 -1
  29. data/lib/orb/models/new_plan_grouped_allocation_price.rb +10 -1
  30. data/lib/orb/models/new_plan_grouped_tiered_package_price.rb +10 -1
  31. data/lib/orb/models/new_plan_grouped_tiered_price.rb +10 -1
  32. data/lib/orb/models/new_plan_grouped_with_metered_minimum_price.rb +10 -1
  33. data/lib/orb/models/new_plan_grouped_with_prorated_minimum_price.rb +10 -1
  34. data/lib/orb/models/new_plan_matrix_price.rb +10 -1
  35. data/lib/orb/models/new_plan_matrix_with_allocation_price.rb +10 -1
  36. data/lib/orb/models/new_plan_matrix_with_display_name_price.rb +10 -1
  37. data/lib/orb/models/new_plan_max_group_tiered_package_price.rb +10 -1
  38. data/lib/orb/models/new_plan_package_price.rb +10 -1
  39. data/lib/orb/models/new_plan_package_with_allocation_price.rb +10 -1
  40. data/lib/orb/models/new_plan_scalable_matrix_with_tiered_pricing_price.rb +10 -1
  41. data/lib/orb/models/new_plan_scalable_matrix_with_unit_pricing_price.rb +10 -1
  42. data/lib/orb/models/new_plan_threshold_total_amount_price.rb +10 -1
  43. data/lib/orb/models/new_plan_tier_with_proration_price.rb +10 -1
  44. data/lib/orb/models/new_plan_tiered_bps_price.rb +10 -1
  45. data/lib/orb/models/new_plan_tiered_package_price.rb +10 -1
  46. data/lib/orb/models/new_plan_tiered_package_with_minimum_price.rb +10 -1
  47. data/lib/orb/models/new_plan_tiered_price.rb +10 -1
  48. data/lib/orb/models/new_plan_tiered_with_minimum_price.rb +10 -1
  49. data/lib/orb/models/new_plan_unit_price.rb +10 -1
  50. data/lib/orb/models/new_plan_unit_with_percent_price.rb +10 -1
  51. data/lib/orb/models/new_plan_unit_with_proration_price.rb +10 -1
  52. data/lib/orb/models/plan_create_params.rb +185 -37
  53. data/lib/orb/models/plan_phase_amount_discount_adjustment.rb +10 -1
  54. data/lib/orb/models/plan_phase_maximum_adjustment.rb +10 -1
  55. data/lib/orb/models/plan_phase_minimum_adjustment.rb +10 -1
  56. data/lib/orb/models/plan_phase_percentage_discount_adjustment.rb +10 -1
  57. data/lib/orb/models/plan_phase_usage_discount_adjustment.rb +10 -1
  58. data/lib/orb/models/price.rb +280 -28
  59. data/lib/orb/resources/customers/credits/ledger.rb +6 -6
  60. data/lib/orb/resources/plans.rb +6 -2
  61. data/lib/orb/version.rb +1 -1
  62. data/rbi/orb/errors.rbi +16 -0
  63. data/rbi/orb/internal/type/boolean.rbi +2 -0
  64. data/rbi/orb/internal/type/converter.rbi +15 -15
  65. data/rbi/orb/internal/type/union.rbi +5 -0
  66. data/rbi/orb/internal/type/unknown.rbi +2 -0
  67. data/rbi/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rbi +3 -3
  68. data/rbi/orb/models/customers/credits/ledger_create_entry_params.rbi +3 -3
  69. data/rbi/orb/models/invoice.rbi +2 -0
  70. data/rbi/orb/models/invoice_fetch_upcoming_response.rbi +2 -0
  71. data/rbi/orb/models/invoice_line_item_create_response.rbi +2 -0
  72. data/rbi/orb/models/monetary_amount_discount_adjustment.rbi +13 -3
  73. data/rbi/orb/models/monetary_maximum_adjustment.rbi +13 -3
  74. data/rbi/orb/models/monetary_minimum_adjustment.rbi +13 -3
  75. data/rbi/orb/models/monetary_percentage_discount_adjustment.rbi +13 -3
  76. data/rbi/orb/models/monetary_usage_discount_adjustment.rbi +10 -0
  77. data/rbi/orb/models/new_plan_bps_price.rbi +13 -3
  78. data/rbi/orb/models/new_plan_bulk_bps_price.rbi +13 -3
  79. data/rbi/orb/models/new_plan_bulk_price.rbi +13 -3
  80. data/rbi/orb/models/new_plan_bulk_with_proration_price.rbi +13 -3
  81. data/rbi/orb/models/new_plan_cumulative_grouped_bulk_price.rbi +13 -3
  82. data/rbi/orb/models/new_plan_grouped_allocation_price.rbi +13 -3
  83. data/rbi/orb/models/new_plan_grouped_tiered_package_price.rbi +13 -3
  84. data/rbi/orb/models/new_plan_grouped_tiered_price.rbi +13 -3
  85. data/rbi/orb/models/new_plan_grouped_with_metered_minimum_price.rbi +13 -3
  86. data/rbi/orb/models/new_plan_grouped_with_prorated_minimum_price.rbi +13 -3
  87. data/rbi/orb/models/new_plan_matrix_price.rbi +13 -3
  88. data/rbi/orb/models/new_plan_matrix_with_allocation_price.rbi +13 -3
  89. data/rbi/orb/models/new_plan_matrix_with_display_name_price.rbi +13 -3
  90. data/rbi/orb/models/new_plan_max_group_tiered_package_price.rbi +13 -3
  91. data/rbi/orb/models/new_plan_package_price.rbi +13 -3
  92. data/rbi/orb/models/new_plan_package_with_allocation_price.rbi +13 -3
  93. data/rbi/orb/models/new_plan_scalable_matrix_with_tiered_pricing_price.rbi +13 -3
  94. data/rbi/orb/models/new_plan_scalable_matrix_with_unit_pricing_price.rbi +13 -3
  95. data/rbi/orb/models/new_plan_threshold_total_amount_price.rbi +13 -3
  96. data/rbi/orb/models/new_plan_tier_with_proration_price.rbi +13 -3
  97. data/rbi/orb/models/new_plan_tiered_bps_price.rbi +13 -3
  98. data/rbi/orb/models/new_plan_tiered_package_price.rbi +13 -3
  99. data/rbi/orb/models/new_plan_tiered_package_with_minimum_price.rbi +13 -3
  100. data/rbi/orb/models/new_plan_tiered_price.rbi +13 -3
  101. data/rbi/orb/models/new_plan_tiered_with_minimum_price.rbi +13 -3
  102. data/rbi/orb/models/new_plan_unit_price.rbi +13 -3
  103. data/rbi/orb/models/new_plan_unit_with_percent_price.rbi +13 -3
  104. data/rbi/orb/models/new_plan_unit_with_proration_price.rbi +13 -3
  105. data/rbi/orb/models/plan_create_params.rbi +415 -135
  106. data/rbi/orb/models/plan_phase_amount_discount_adjustment.rbi +13 -3
  107. data/rbi/orb/models/plan_phase_maximum_adjustment.rbi +13 -3
  108. data/rbi/orb/models/plan_phase_minimum_adjustment.rbi +13 -3
  109. data/rbi/orb/models/plan_phase_percentage_discount_adjustment.rbi +13 -3
  110. data/rbi/orb/models/plan_phase_usage_discount_adjustment.rbi +10 -0
  111. data/rbi/orb/models/price.rbi +280 -0
  112. data/rbi/orb/resources/customers/credits/ledger.rbi +6 -6
  113. data/rbi/orb/resources/plans.rbi +11 -33
  114. data/sig/orb/errors.rbs +9 -0
  115. data/sig/orb/internal/type/converter.rbs +7 -1
  116. data/sig/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rbs +1 -1
  117. data/sig/orb/models/customers/credits/ledger_create_entry_params.rbs +1 -1
  118. data/sig/orb/models/monetary_amount_discount_adjustment.rbs +8 -3
  119. data/sig/orb/models/monetary_maximum_adjustment.rbs +8 -3
  120. data/sig/orb/models/monetary_minimum_adjustment.rbs +8 -3
  121. data/sig/orb/models/monetary_percentage_discount_adjustment.rbs +8 -3
  122. data/sig/orb/models/monetary_usage_discount_adjustment.rbs +5 -0
  123. data/sig/orb/models/new_plan_bps_price.rbs +8 -3
  124. data/sig/orb/models/new_plan_bulk_bps_price.rbs +8 -3
  125. data/sig/orb/models/new_plan_bulk_price.rbs +8 -3
  126. data/sig/orb/models/new_plan_bulk_with_proration_price.rbs +8 -3
  127. data/sig/orb/models/new_plan_cumulative_grouped_bulk_price.rbs +8 -3
  128. data/sig/orb/models/new_plan_grouped_allocation_price.rbs +8 -3
  129. data/sig/orb/models/new_plan_grouped_tiered_package_price.rbs +8 -3
  130. data/sig/orb/models/new_plan_grouped_tiered_price.rbs +8 -3
  131. data/sig/orb/models/new_plan_grouped_with_metered_minimum_price.rbs +8 -3
  132. data/sig/orb/models/new_plan_grouped_with_prorated_minimum_price.rbs +8 -3
  133. data/sig/orb/models/new_plan_matrix_price.rbs +8 -3
  134. data/sig/orb/models/new_plan_matrix_with_allocation_price.rbs +8 -3
  135. data/sig/orb/models/new_plan_matrix_with_display_name_price.rbs +8 -3
  136. data/sig/orb/models/new_plan_max_group_tiered_package_price.rbs +8 -3
  137. data/sig/orb/models/new_plan_package_price.rbs +8 -3
  138. data/sig/orb/models/new_plan_package_with_allocation_price.rbs +8 -3
  139. data/sig/orb/models/new_plan_scalable_matrix_with_tiered_pricing_price.rbs +8 -3
  140. data/sig/orb/models/new_plan_scalable_matrix_with_unit_pricing_price.rbs +8 -3
  141. data/sig/orb/models/new_plan_threshold_total_amount_price.rbs +8 -3
  142. data/sig/orb/models/new_plan_tier_with_proration_price.rbs +8 -3
  143. data/sig/orb/models/new_plan_tiered_bps_price.rbs +8 -3
  144. data/sig/orb/models/new_plan_tiered_package_price.rbs +8 -3
  145. data/sig/orb/models/new_plan_tiered_package_with_minimum_price.rbs +8 -3
  146. data/sig/orb/models/new_plan_tiered_price.rbs +8 -3
  147. data/sig/orb/models/new_plan_tiered_with_minimum_price.rbs +8 -3
  148. data/sig/orb/models/new_plan_unit_price.rbs +8 -3
  149. data/sig/orb/models/new_plan_unit_with_percent_price.rbs +8 -3
  150. data/sig/orb/models/new_plan_unit_with_proration_price.rbs +8 -3
  151. data/sig/orb/models/plan_create_params.rbs +156 -37
  152. data/sig/orb/models/plan_phase_amount_discount_adjustment.rbs +8 -3
  153. data/sig/orb/models/plan_phase_maximum_adjustment.rbs +8 -3
  154. data/sig/orb/models/plan_phase_minimum_adjustment.rbs +8 -3
  155. data/sig/orb/models/plan_phase_percentage_discount_adjustment.rbs +8 -3
  156. data/sig/orb/models/plan_phase_usage_discount_adjustment.rbs +5 -0
  157. data/sig/orb/models/price.rbs +140 -0
  158. data/sig/orb/resources/customers/credits/ledger.rbs +2 -2
  159. data/sig/orb/resources/plans.rbs +3 -1
  160. metadata +2 -2
@@ -248,12 +248,12 @@ module Orb
248
248
  amount: Float,
249
249
  entry_type:
250
250
  Orb::Customers::Credits::LedgerCreateEntryParams::EntryType::OrSymbol,
251
- expiry_date: T.nilable(Time),
252
251
  target_expiry_date: Date,
253
252
  block_id: String,
254
253
  currency: T.nilable(String),
255
254
  description: T.nilable(String),
256
255
  effective_date: T.nilable(Time),
256
+ expiry_date: T.nilable(Time),
257
257
  invoice_settings:
258
258
  T.nilable(
259
259
  Orb::Customers::Credits::LedgerCreateEntryParams::InvoiceSettings::OrHash
@@ -275,8 +275,6 @@ module Orb
275
275
  # decrement or void operations.
276
276
  amount:,
277
277
  entry_type:,
278
- # An ISO 8601 format date that identifies the origination credit block to expire
279
- expiry_date:,
280
278
  # A future date (specified in YYYY-MM-DD format) used for expiration change,
281
279
  # denoting when credits transferred (as part of a partial block expiration) should
282
280
  # expire.
@@ -293,6 +291,8 @@ module Orb
293
291
  # An ISO 8601 format date that denotes when this credit balance should become
294
292
  # available for use.
295
293
  effective_date: nil,
294
+ # An ISO 8601 format date that identifies the origination credit block to expire
295
+ expiry_date: nil,
296
296
  # Passing `invoice_settings` automatically generates an invoice for the newly
297
297
  # added credits. If `invoice_settings` is passed, you must specify
298
298
  # per_unit_cost_basis, as the calculation of the invoice total is done on that
@@ -427,12 +427,12 @@ module Orb
427
427
  amount: Float,
428
428
  entry_type:
429
429
  Orb::Customers::Credits::LedgerCreateEntryByExternalIDParams::EntryType::OrSymbol,
430
- expiry_date: T.nilable(Time),
431
430
  target_expiry_date: Date,
432
431
  block_id: String,
433
432
  currency: T.nilable(String),
434
433
  description: T.nilable(String),
435
434
  effective_date: T.nilable(Time),
435
+ expiry_date: T.nilable(Time),
436
436
  invoice_settings:
437
437
  T.nilable(
438
438
  Orb::Customers::Credits::LedgerCreateEntryByExternalIDParams::InvoiceSettings::OrHash
@@ -454,8 +454,6 @@ module Orb
454
454
  # decrement or void operations.
455
455
  amount:,
456
456
  entry_type:,
457
- # An ISO 8601 format date that identifies the origination credit block to expire
458
- expiry_date:,
459
457
  # A future date (specified in YYYY-MM-DD format) used for expiration change,
460
458
  # denoting when credits transferred (as part of a partial block expiration) should
461
459
  # expire.
@@ -472,6 +470,8 @@ module Orb
472
470
  # An ISO 8601 format date that denotes when this credit balance should become
473
471
  # available for use.
474
472
  effective_date: nil,
473
+ # An ISO 8601 format date that identifies the origination credit block to expire
474
+ expiry_date: nil,
475
475
  # Passing `invoice_settings` automatically generates an invoice for the newly
476
476
  # added credits. If `invoice_settings` is passed, you must specify
477
477
  # per_unit_cost_basis, as the calculation of the invoice total is done on that
@@ -11,43 +11,15 @@ module Orb
11
11
  params(
12
12
  currency: String,
13
13
  name: String,
14
- prices:
15
- T::Array[
16
- T.any(
17
- Orb::NewPlanUnitPrice::OrHash,
18
- Orb::NewPlanPackagePrice::OrHash,
19
- Orb::NewPlanMatrixPrice::OrHash,
20
- Orb::NewPlanTieredPrice::OrHash,
21
- Orb::NewPlanTieredBPSPrice::OrHash,
22
- Orb::NewPlanBPSPrice::OrHash,
23
- Orb::NewPlanBulkBPSPrice::OrHash,
24
- Orb::NewPlanBulkPrice::OrHash,
25
- Orb::NewPlanThresholdTotalAmountPrice::OrHash,
26
- Orb::NewPlanTieredPackagePrice::OrHash,
27
- Orb::NewPlanTieredWithMinimumPrice::OrHash,
28
- Orb::NewPlanUnitWithPercentPrice::OrHash,
29
- Orb::NewPlanPackageWithAllocationPrice::OrHash,
30
- Orb::NewPlanTierWithProrationPrice::OrHash,
31
- Orb::NewPlanUnitWithProrationPrice::OrHash,
32
- Orb::NewPlanGroupedAllocationPrice::OrHash,
33
- Orb::NewPlanGroupedWithProratedMinimumPrice::OrHash,
34
- Orb::NewPlanGroupedWithMeteredMinimumPrice::OrHash,
35
- Orb::NewPlanMatrixWithDisplayNamePrice::OrHash,
36
- Orb::NewPlanBulkWithProrationPrice::OrHash,
37
- Orb::NewPlanGroupedTieredPackagePrice::OrHash,
38
- Orb::NewPlanMaxGroupTieredPackagePrice::OrHash,
39
- Orb::NewPlanScalableMatrixWithUnitPricingPrice::OrHash,
40
- Orb::NewPlanScalableMatrixWithTieredPricingPrice::OrHash,
41
- Orb::NewPlanCumulativeGroupedBulkPrice::OrHash,
42
- Orb::NewPlanTieredPackageWithMinimumPrice::OrHash,
43
- Orb::NewPlanMatrixWithAllocationPrice::OrHash,
44
- Orb::NewPlanGroupedTieredPrice::OrHash
45
- )
46
- ],
14
+ prices: T::Array[Orb::PlanCreateParams::Price::OrHash],
15
+ adjustments:
16
+ T.nilable(T::Array[Orb::PlanCreateParams::Adjustment::OrHash]),
47
17
  default_invoice_memo: T.nilable(String),
48
18
  external_plan_id: T.nilable(String),
49
19
  metadata: T.nilable(T::Hash[Symbol, T.nilable(String)]),
50
20
  net_terms: T.nilable(Integer),
21
+ plan_phases:
22
+ T.nilable(T::Array[Orb::PlanCreateParams::PlanPhase::OrHash]),
51
23
  status: Orb::PlanCreateParams::Status::OrSymbol,
52
24
  request_options: Orb::RequestOptions::OrHash
53
25
  ).returns(Orb::Plan)
@@ -60,6 +32,9 @@ module Orb
60
32
  # Prices for this plan. If the plan has phases, this includes prices across all
61
33
  # phases of the plan.
62
34
  prices:,
35
+ # Adjustments for this plan. If the plan has phases, this includes adjustments
36
+ # across all phases of the plan.
37
+ adjustments: nil,
63
38
  # Free-form text which is available on the invoice PDF and the Orb invoice portal.
64
39
  default_invoice_memo: nil,
65
40
  external_plan_id: nil,
@@ -71,6 +46,9 @@ module Orb
71
46
  # date for the invoice. If you intend the invoice to be due on issue, set this
72
47
  # to 0.
73
48
  net_terms: nil,
49
+ # Configuration of pre-defined phases, each with their own prices and adjustments.
50
+ # Leave unspecified for plans with a single phase.
51
+ plan_phases: nil,
74
52
  # The status of the plan to create (either active or draft). If not specified,
75
53
  # this defaults to active.
76
54
  status: nil,
data/sig/orb/errors.rbs CHANGED
@@ -5,6 +5,15 @@ module Orb
5
5
  end
6
6
 
7
7
  class ConversionError < Orb::Errors::Error
8
+ def cause: -> StandardError?
9
+
10
+ def initialize: (
11
+ on: Class,
12
+ method: Symbol,
13
+ target: top,
14
+ value: top,
15
+ ?cause: StandardError?
16
+ ) -> void
8
17
  end
9
18
 
10
19
  class APIError < Orb::Errors::Error
@@ -8,8 +8,10 @@ module Orb
8
8
 
9
9
  type coerce_state =
10
10
  {
11
- strictness: bool | :strong,
11
+ translate_names: bool,
12
+ strictness: bool,
12
13
  exactness: { yes: Integer, no: Integer, maybe: Integer },
14
+ error: Class,
13
15
  branched: Integer
14
16
  }
15
17
 
@@ -37,6 +39,10 @@ module Orb
37
39
  | Orb::Internal::Type::Converter::input spec
38
40
  ) -> (^-> top)
39
41
 
42
+ def self.new_coerce_state: (
43
+ ?translate_names: bool
44
+ ) -> Orb::Internal::Type::Converter::coerce_state
45
+
40
46
  def self.coerce: (
41
47
  Orb::Internal::Type::Converter::input target,
42
48
  top value,
@@ -50,12 +50,12 @@ module Orb
50
50
  def initialize: (
51
51
  amount: Float,
52
52
  entry_type: Orb::Models::Customers::Credits::LedgerCreateEntryByExternalIDParams::entry_type,
53
- expiry_date: Time?,
54
53
  target_expiry_date: Date,
55
54
  block_id: String,
56
55
  ?currency: String?,
57
56
  ?description: String?,
58
57
  ?effective_date: Time?,
58
+ ?expiry_date: Time?,
59
59
  ?invoice_settings: Orb::Customers::Credits::LedgerCreateEntryByExternalIDParams::InvoiceSettings?,
60
60
  ?metadata: ::Hash[Symbol, String?]?,
61
61
  ?per_unit_cost_basis: String?,
@@ -50,12 +50,12 @@ module Orb
50
50
  def initialize: (
51
51
  amount: Float,
52
52
  entry_type: Orb::Models::Customers::Credits::LedgerCreateEntryParams::entry_type,
53
- expiry_date: Time?,
54
53
  target_expiry_date: Date,
55
54
  block_id: String,
56
55
  ?currency: String?,
57
56
  ?description: String?,
58
57
  ?effective_date: Time?,
58
+ ?expiry_date: Time?,
59
59
  ?invoice_settings: Orb::Customers::Credits::LedgerCreateEntryParams::InvoiceSettings?,
60
60
  ?metadata: ::Hash[Symbol, String?]?,
61
61
  ?per_unit_cost_basis: String?,
@@ -9,7 +9,8 @@ module Orb
9
9
  applies_to_price_ids: ::Array[String],
10
10
  filters: ::Array[Orb::TransformPriceFilter],
11
11
  is_invoice_level: bool,
12
- reason: String?
12
+ reason: String?,
13
+ replaces_adjustment_id: String?
13
14
  }
14
15
 
15
16
  class MonetaryAmountDiscountAdjustment < Orb::Internal::Type::BaseModel
@@ -29,6 +30,8 @@ module Orb
29
30
 
30
31
  attr_accessor reason: String?
31
32
 
33
+ attr_accessor replaces_adjustment_id: String?
34
+
32
35
  def initialize: (
33
36
  id: String,
34
37
  adjustment_type: Orb::Models::MonetaryAmountDiscountAdjustment::adjustment_type,
@@ -37,7 +40,8 @@ module Orb
37
40
  applies_to_price_ids: ::Array[String],
38
41
  filters: ::Array[Orb::TransformPriceFilter],
39
42
  is_invoice_level: bool,
40
- reason: String?
43
+ reason: String?,
44
+ replaces_adjustment_id: String?
41
45
  ) -> void
42
46
 
43
47
  def to_hash: -> {
@@ -48,7 +52,8 @@ module Orb
48
52
  applies_to_price_ids: ::Array[String],
49
53
  filters: ::Array[Orb::TransformPriceFilter],
50
54
  is_invoice_level: bool,
51
- reason: String?
55
+ reason: String?,
56
+ replaces_adjustment_id: String?
52
57
  }
53
58
 
54
59
  type adjustment_type = :amount_discount
@@ -9,7 +9,8 @@ module Orb
9
9
  filters: ::Array[Orb::TransformPriceFilter],
10
10
  is_invoice_level: bool,
11
11
  maximum_amount: String,
12
- reason: String?
12
+ reason: String?,
13
+ replaces_adjustment_id: String?
13
14
  }
14
15
 
15
16
  class MonetaryMaximumAdjustment < Orb::Internal::Type::BaseModel
@@ -29,6 +30,8 @@ module Orb
29
30
 
30
31
  attr_accessor reason: String?
31
32
 
33
+ attr_accessor replaces_adjustment_id: String?
34
+
32
35
  def initialize: (
33
36
  id: String,
34
37
  adjustment_type: Orb::Models::MonetaryMaximumAdjustment::adjustment_type,
@@ -37,7 +40,8 @@ module Orb
37
40
  filters: ::Array[Orb::TransformPriceFilter],
38
41
  is_invoice_level: bool,
39
42
  maximum_amount: String,
40
- reason: String?
43
+ reason: String?,
44
+ replaces_adjustment_id: String?
41
45
  ) -> void
42
46
 
43
47
  def to_hash: -> {
@@ -48,7 +52,8 @@ module Orb
48
52
  filters: ::Array[Orb::TransformPriceFilter],
49
53
  is_invoice_level: bool,
50
54
  maximum_amount: String,
51
- reason: String?
55
+ reason: String?,
56
+ replaces_adjustment_id: String?
52
57
  }
53
58
 
54
59
  type adjustment_type = :maximum
@@ -10,7 +10,8 @@ module Orb
10
10
  is_invoice_level: bool,
11
11
  item_id: String,
12
12
  minimum_amount: String,
13
- reason: String?
13
+ reason: String?,
14
+ replaces_adjustment_id: String?
14
15
  }
15
16
 
16
17
  class MonetaryMinimumAdjustment < Orb::Internal::Type::BaseModel
@@ -32,6 +33,8 @@ module Orb
32
33
 
33
34
  attr_accessor reason: String?
34
35
 
36
+ attr_accessor replaces_adjustment_id: String?
37
+
35
38
  def initialize: (
36
39
  id: String,
37
40
  adjustment_type: Orb::Models::MonetaryMinimumAdjustment::adjustment_type,
@@ -41,7 +44,8 @@ module Orb
41
44
  is_invoice_level: bool,
42
45
  item_id: String,
43
46
  minimum_amount: String,
44
- reason: String?
47
+ reason: String?,
48
+ replaces_adjustment_id: String?
45
49
  ) -> void
46
50
 
47
51
  def to_hash: -> {
@@ -53,7 +57,8 @@ module Orb
53
57
  is_invoice_level: bool,
54
58
  item_id: String,
55
59
  minimum_amount: String,
56
- reason: String?
60
+ reason: String?,
61
+ replaces_adjustment_id: String?
57
62
  }
58
63
 
59
64
  type adjustment_type = :minimum
@@ -9,7 +9,8 @@ module Orb
9
9
  filters: ::Array[Orb::TransformPriceFilter],
10
10
  is_invoice_level: bool,
11
11
  percentage_discount: Float,
12
- reason: String?
12
+ reason: String?,
13
+ replaces_adjustment_id: String?
13
14
  }
14
15
 
15
16
  class MonetaryPercentageDiscountAdjustment < Orb::Internal::Type::BaseModel
@@ -29,6 +30,8 @@ module Orb
29
30
 
30
31
  attr_accessor reason: String?
31
32
 
33
+ attr_accessor replaces_adjustment_id: String?
34
+
32
35
  def initialize: (
33
36
  id: String,
34
37
  adjustment_type: Orb::Models::MonetaryPercentageDiscountAdjustment::adjustment_type,
@@ -37,7 +40,8 @@ module Orb
37
40
  filters: ::Array[Orb::TransformPriceFilter],
38
41
  is_invoice_level: bool,
39
42
  percentage_discount: Float,
40
- reason: String?
43
+ reason: String?,
44
+ replaces_adjustment_id: String?
41
45
  ) -> void
42
46
 
43
47
  def to_hash: -> {
@@ -48,7 +52,8 @@ module Orb
48
52
  filters: ::Array[Orb::TransformPriceFilter],
49
53
  is_invoice_level: bool,
50
54
  percentage_discount: Float,
51
- reason: String?
55
+ reason: String?,
56
+ replaces_adjustment_id: String?
52
57
  }
53
58
 
54
59
  type adjustment_type = :percentage_discount
@@ -9,6 +9,7 @@ module Orb
9
9
  filters: ::Array[Orb::TransformPriceFilter],
10
10
  is_invoice_level: bool,
11
11
  reason: String?,
12
+ replaces_adjustment_id: String?,
12
13
  usage_discount: Float
13
14
  }
14
15
 
@@ -27,6 +28,8 @@ module Orb
27
28
 
28
29
  attr_accessor reason: String?
29
30
 
31
+ attr_accessor replaces_adjustment_id: String?
32
+
30
33
  attr_accessor usage_discount: Float
31
34
 
32
35
  def initialize: (
@@ -37,6 +40,7 @@ module Orb
37
40
  filters: ::Array[Orb::TransformPriceFilter],
38
41
  is_invoice_level: bool,
39
42
  reason: String?,
43
+ replaces_adjustment_id: String?,
40
44
  usage_discount: Float
41
45
  ) -> void
42
46
 
@@ -48,6 +52,7 @@ module Orb
48
52
  filters: ::Array[Orb::TransformPriceFilter],
49
53
  is_invoice_level: bool,
50
54
  reason: String?,
55
+ replaces_adjustment_id: String?,
51
56
  usage_discount: Float
52
57
  }
53
58
 
@@ -18,7 +18,8 @@ module Orb
18
18
  fixed_price_quantity: Float?,
19
19
  invoice_grouping_key: String?,
20
20
  invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
21
- metadata: ::Hash[Symbol, String?]?
21
+ metadata: ::Hash[Symbol, String?]?,
22
+ reference_id: String?
22
23
  }
23
24
 
24
25
  class NewPlanBPSPrice < Orb::Internal::Type::BaseModel
@@ -56,6 +57,8 @@ module Orb
56
57
 
57
58
  attr_accessor metadata: ::Hash[Symbol, String?]?
58
59
 
60
+ attr_accessor reference_id: String?
61
+
59
62
  def initialize: (
60
63
  bps_config: Orb::BPSConfig,
61
64
  cadence: Orb::Models::NewPlanBPSPrice::cadence,
@@ -73,7 +76,8 @@ module Orb
73
76
  ?fixed_price_quantity: Float?,
74
77
  ?invoice_grouping_key: String?,
75
78
  ?invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
76
- ?metadata: ::Hash[Symbol, String?]?
79
+ ?metadata: ::Hash[Symbol, String?]?,
80
+ ?reference_id: String?
77
81
  ) -> void
78
82
 
79
83
  def to_hash: -> {
@@ -93,7 +97,8 @@ module Orb
93
97
  fixed_price_quantity: Float?,
94
98
  invoice_grouping_key: String?,
95
99
  invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
96
- metadata: ::Hash[Symbol, String?]?
100
+ metadata: ::Hash[Symbol, String?]?,
101
+ reference_id: String?
97
102
  }
98
103
 
99
104
  type cadence =
@@ -18,7 +18,8 @@ module Orb
18
18
  fixed_price_quantity: Float?,
19
19
  invoice_grouping_key: String?,
20
20
  invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
21
- metadata: ::Hash[Symbol, String?]?
21
+ metadata: ::Hash[Symbol, String?]?,
22
+ reference_id: String?
22
23
  }
23
24
 
24
25
  class NewPlanBulkBPSPrice < Orb::Internal::Type::BaseModel
@@ -56,6 +57,8 @@ module Orb
56
57
 
57
58
  attr_accessor metadata: ::Hash[Symbol, String?]?
58
59
 
60
+ attr_accessor reference_id: String?
61
+
59
62
  def initialize: (
60
63
  bulk_bps_config: Orb::BulkBPSConfig,
61
64
  cadence: Orb::Models::NewPlanBulkBPSPrice::cadence,
@@ -73,7 +76,8 @@ module Orb
73
76
  ?fixed_price_quantity: Float?,
74
77
  ?invoice_grouping_key: String?,
75
78
  ?invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
76
- ?metadata: ::Hash[Symbol, String?]?
79
+ ?metadata: ::Hash[Symbol, String?]?,
80
+ ?reference_id: String?
77
81
  ) -> void
78
82
 
79
83
  def to_hash: -> {
@@ -93,7 +97,8 @@ module Orb
93
97
  fixed_price_quantity: Float?,
94
98
  invoice_grouping_key: String?,
95
99
  invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
96
- metadata: ::Hash[Symbol, String?]?
100
+ metadata: ::Hash[Symbol, String?]?,
101
+ reference_id: String?
97
102
  }
98
103
 
99
104
  type cadence =
@@ -18,7 +18,8 @@ module Orb
18
18
  fixed_price_quantity: Float?,
19
19
  invoice_grouping_key: String?,
20
20
  invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
21
- metadata: ::Hash[Symbol, String?]?
21
+ metadata: ::Hash[Symbol, String?]?,
22
+ reference_id: String?
22
23
  }
23
24
 
24
25
  class NewPlanBulkPrice < Orb::Internal::Type::BaseModel
@@ -56,6 +57,8 @@ module Orb
56
57
 
57
58
  attr_accessor metadata: ::Hash[Symbol, String?]?
58
59
 
60
+ attr_accessor reference_id: String?
61
+
59
62
  def initialize: (
60
63
  bulk_config: Orb::BulkConfig,
61
64
  cadence: Orb::Models::NewPlanBulkPrice::cadence,
@@ -73,7 +76,8 @@ module Orb
73
76
  ?fixed_price_quantity: Float?,
74
77
  ?invoice_grouping_key: String?,
75
78
  ?invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
76
- ?metadata: ::Hash[Symbol, String?]?
79
+ ?metadata: ::Hash[Symbol, String?]?,
80
+ ?reference_id: String?
77
81
  ) -> void
78
82
 
79
83
  def to_hash: -> {
@@ -93,7 +97,8 @@ module Orb
93
97
  fixed_price_quantity: Float?,
94
98
  invoice_grouping_key: String?,
95
99
  invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
96
- metadata: ::Hash[Symbol, String?]?
100
+ metadata: ::Hash[Symbol, String?]?,
101
+ reference_id: String?
97
102
  }
98
103
 
99
104
  type cadence =
@@ -18,7 +18,8 @@ module Orb
18
18
  fixed_price_quantity: Float?,
19
19
  invoice_grouping_key: String?,
20
20
  invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
21
- metadata: ::Hash[Symbol, String?]?
21
+ metadata: ::Hash[Symbol, String?]?,
22
+ reference_id: String?
22
23
  }
23
24
 
24
25
  class NewPlanBulkWithProrationPrice < Orb::Internal::Type::BaseModel
@@ -56,6 +57,8 @@ module Orb
56
57
 
57
58
  attr_accessor metadata: ::Hash[Symbol, String?]?
58
59
 
60
+ attr_accessor reference_id: String?
61
+
59
62
  def initialize: (
60
63
  bulk_with_proration_config: ::Hash[Symbol, top],
61
64
  cadence: Orb::Models::NewPlanBulkWithProrationPrice::cadence,
@@ -73,7 +76,8 @@ module Orb
73
76
  ?fixed_price_quantity: Float?,
74
77
  ?invoice_grouping_key: String?,
75
78
  ?invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
76
- ?metadata: ::Hash[Symbol, String?]?
79
+ ?metadata: ::Hash[Symbol, String?]?,
80
+ ?reference_id: String?
77
81
  ) -> void
78
82
 
79
83
  def to_hash: -> {
@@ -93,7 +97,8 @@ module Orb
93
97
  fixed_price_quantity: Float?,
94
98
  invoice_grouping_key: String?,
95
99
  invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
96
- metadata: ::Hash[Symbol, String?]?
100
+ metadata: ::Hash[Symbol, String?]?,
101
+ reference_id: String?
97
102
  }
98
103
 
99
104
  type cadence =
@@ -18,7 +18,8 @@ module Orb
18
18
  fixed_price_quantity: Float?,
19
19
  invoice_grouping_key: String?,
20
20
  invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
21
- metadata: ::Hash[Symbol, String?]?
21
+ metadata: ::Hash[Symbol, String?]?,
22
+ reference_id: String?
22
23
  }
23
24
 
24
25
  class NewPlanCumulativeGroupedBulkPrice < Orb::Internal::Type::BaseModel
@@ -56,6 +57,8 @@ module Orb
56
57
 
57
58
  attr_accessor metadata: ::Hash[Symbol, String?]?
58
59
 
60
+ attr_accessor reference_id: String?
61
+
59
62
  def initialize: (
60
63
  cadence: Orb::Models::NewPlanCumulativeGroupedBulkPrice::cadence,
61
64
  cumulative_grouped_bulk_config: ::Hash[Symbol, top],
@@ -73,7 +76,8 @@ module Orb
73
76
  ?fixed_price_quantity: Float?,
74
77
  ?invoice_grouping_key: String?,
75
78
  ?invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
76
- ?metadata: ::Hash[Symbol, String?]?
79
+ ?metadata: ::Hash[Symbol, String?]?,
80
+ ?reference_id: String?
77
81
  ) -> void
78
82
 
79
83
  def to_hash: -> {
@@ -93,7 +97,8 @@ module Orb
93
97
  fixed_price_quantity: Float?,
94
98
  invoice_grouping_key: String?,
95
99
  invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
96
- metadata: ::Hash[Symbol, String?]?
100
+ metadata: ::Hash[Symbol, String?]?,
101
+ reference_id: String?
97
102
  }
98
103
 
99
104
  type cadence =
@@ -18,7 +18,8 @@ module Orb
18
18
  fixed_price_quantity: Float?,
19
19
  invoice_grouping_key: String?,
20
20
  invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
21
- metadata: ::Hash[Symbol, String?]?
21
+ metadata: ::Hash[Symbol, String?]?,
22
+ reference_id: String?
22
23
  }
23
24
 
24
25
  class NewPlanGroupedAllocationPrice < Orb::Internal::Type::BaseModel
@@ -56,6 +57,8 @@ module Orb
56
57
 
57
58
  attr_accessor metadata: ::Hash[Symbol, String?]?
58
59
 
60
+ attr_accessor reference_id: String?
61
+
59
62
  def initialize: (
60
63
  cadence: Orb::Models::NewPlanGroupedAllocationPrice::cadence,
61
64
  grouped_allocation_config: ::Hash[Symbol, top],
@@ -73,7 +76,8 @@ module Orb
73
76
  ?fixed_price_quantity: Float?,
74
77
  ?invoice_grouping_key: String?,
75
78
  ?invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
76
- ?metadata: ::Hash[Symbol, String?]?
79
+ ?metadata: ::Hash[Symbol, String?]?,
80
+ ?reference_id: String?
77
81
  ) -> void
78
82
 
79
83
  def to_hash: -> {
@@ -93,7 +97,8 @@ module Orb
93
97
  fixed_price_quantity: Float?,
94
98
  invoice_grouping_key: String?,
95
99
  invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
96
- metadata: ::Hash[Symbol, String?]?
100
+ metadata: ::Hash[Symbol, String?]?,
101
+ reference_id: String?
97
102
  }
98
103
 
99
104
  type cadence =
@@ -18,7 +18,8 @@ module Orb
18
18
  fixed_price_quantity: Float?,
19
19
  invoice_grouping_key: String?,
20
20
  invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
21
- metadata: ::Hash[Symbol, String?]?
21
+ metadata: ::Hash[Symbol, String?]?,
22
+ reference_id: String?
22
23
  }
23
24
 
24
25
  class NewPlanGroupedTieredPackagePrice < Orb::Internal::Type::BaseModel
@@ -56,6 +57,8 @@ module Orb
56
57
 
57
58
  attr_accessor metadata: ::Hash[Symbol, String?]?
58
59
 
60
+ attr_accessor reference_id: String?
61
+
59
62
  def initialize: (
60
63
  cadence: Orb::Models::NewPlanGroupedTieredPackagePrice::cadence,
61
64
  grouped_tiered_package_config: ::Hash[Symbol, top],
@@ -73,7 +76,8 @@ module Orb
73
76
  ?fixed_price_quantity: Float?,
74
77
  ?invoice_grouping_key: String?,
75
78
  ?invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
76
- ?metadata: ::Hash[Symbol, String?]?
79
+ ?metadata: ::Hash[Symbol, String?]?,
80
+ ?reference_id: String?
77
81
  ) -> void
78
82
 
79
83
  def to_hash: -> {
@@ -93,7 +97,8 @@ module Orb
93
97
  fixed_price_quantity: Float?,
94
98
  invoice_grouping_key: String?,
95
99
  invoicing_cycle_configuration: Orb::NewBillingCycleConfiguration?,
96
- metadata: ::Hash[Symbol, String?]?
100
+ metadata: ::Hash[Symbol, String?]?,
101
+ reference_id: String?
97
102
  }
98
103
 
99
104
  type cadence =