orb-billing 1.9.0 → 1.11.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 (71) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +26 -0
  3. data/README.md +1 -1
  4. data/lib/orb/models/customer.rb +139 -100
  5. data/lib/orb/models/customer_create_params.rb +139 -100
  6. data/lib/orb/models/customer_tax_id.rb +214 -102
  7. data/lib/orb/models/customer_update_by_external_id_params.rb +145 -103
  8. data/lib/orb/models/customer_update_params.rb +145 -103
  9. data/lib/orb/models/customers/cost_list_by_external_id_params.rb +2 -2
  10. data/lib/orb/models/customers/cost_list_params.rb +2 -2
  11. data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rb +3 -3
  12. data/lib/orb/models/customers/credits/ledger_create_entry_params.rb +3 -3
  13. data/lib/orb/models/dimensional_price_group_update_params.rb +38 -0
  14. data/lib/orb/models/dimensional_price_groups/external_dimensional_price_group_id_update_params.rb +44 -0
  15. data/lib/orb/models/invoice.rb +141 -102
  16. data/lib/orb/models/invoice_fetch_upcoming_response.rb +141 -102
  17. data/lib/orb/models/invoice_line_item_create_response.rb +2 -2
  18. data/lib/orb/models/per_price_cost.rb +2 -2
  19. data/lib/orb/models/plan.rb +2 -2
  20. data/lib/orb/models/plan_version.rb +2 -2
  21. data/lib/orb/models/price.rb +245 -1
  22. data/lib/orb/models/price_interval.rb +2 -2
  23. data/lib/orb/models/subscription_fetch_costs_params.rb +2 -2
  24. data/lib/orb/models.rb +2 -0
  25. data/lib/orb/resources/customers/costs.rb +2 -2
  26. data/lib/orb/resources/customers.rb +2 -2
  27. data/lib/orb/resources/dimensional_price_groups/external_dimensional_price_group_id.rb +36 -0
  28. data/lib/orb/resources/dimensional_price_groups.rb +31 -0
  29. data/lib/orb/resources/invoices.rb +5 -4
  30. data/lib/orb/resources/prices/external_price_id.rb +2 -2
  31. data/lib/orb/resources/prices.rb +4 -4
  32. data/lib/orb/resources/subscriptions.rb +1 -1
  33. data/lib/orb/version.rb +1 -1
  34. data/lib/orb.rb +2 -0
  35. data/rbi/orb/models/customer.rbi +278 -200
  36. data/rbi/orb/models/customer_create_params.rbi +278 -200
  37. data/rbi/orb/models/customer_tax_id.rbi +214 -102
  38. data/rbi/orb/models/customer_update_by_external_id_params.rbi +288 -204
  39. data/rbi/orb/models/customer_update_params.rbi +288 -204
  40. data/rbi/orb/models/customers/cost_list_by_external_id_params.rbi +2 -2
  41. data/rbi/orb/models/customers/cost_list_params.rbi +2 -2
  42. data/rbi/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rbi +3 -3
  43. data/rbi/orb/models/customers/credits/ledger_create_entry_params.rbi +3 -3
  44. data/rbi/orb/models/dimensional_price_group_update_params.rbi +61 -0
  45. data/rbi/orb/models/dimensional_price_groups/external_dimensional_price_group_id_update_params.rbi +66 -0
  46. data/rbi/orb/models/invoice.rbi +280 -201
  47. data/rbi/orb/models/invoice_fetch_upcoming_response.rbi +280 -201
  48. data/rbi/orb/models/invoice_line_item_create_response.rbi +2 -1
  49. data/rbi/orb/models/per_price_cost.rbi +2 -1
  50. data/rbi/orb/models/plan.rbi +2 -1
  51. data/rbi/orb/models/plan_version.rbi +2 -1
  52. data/rbi/orb/models/price.rbi +384 -1
  53. data/rbi/orb/models/price_interval.rbi +2 -1
  54. data/rbi/orb/models/subscription_fetch_costs_params.rbi +2 -2
  55. data/rbi/orb/models.rbi +3 -0
  56. data/rbi/orb/resources/customers/costs.rbi +2 -2
  57. data/rbi/orb/resources/customers.rbi +427 -304
  58. data/rbi/orb/resources/dimensional_price_groups/external_dimensional_price_group_id.rbi +26 -0
  59. data/rbi/orb/resources/dimensional_price_groups.rbi +26 -0
  60. data/rbi/orb/resources/invoices.rbi +5 -4
  61. data/rbi/orb/resources/subscriptions.rbi +1 -1
  62. data/sig/orb/models/customer_tax_id.rbs +150 -4
  63. data/sig/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rbs +4 -4
  64. data/sig/orb/models/customers/credits/ledger_create_entry_params.rbs +4 -4
  65. data/sig/orb/models/dimensional_price_group_update_params.rbs +31 -0
  66. data/sig/orb/models/dimensional_price_groups/external_dimensional_price_group_id_update_params.rbs +33 -0
  67. data/sig/orb/models/price.rbs +179 -0
  68. data/sig/orb/models.rbs +2 -0
  69. data/sig/orb/resources/dimensional_price_groups/external_dimensional_price_group_id.rbs +7 -0
  70. data/sig/orb/resources/dimensional_price_groups.rbs +7 -0
  71. metadata +8 -2
@@ -29,6 +29,7 @@ module Orb
29
29
  | Orb::Price::ScalableMatrixWithUnitPricing
30
30
  | Orb::Price::ScalableMatrixWithTieredPricing
31
31
  | Orb::Price::CumulativeGroupedBulk
32
+ | Orb::Price::GroupedWithMinMaxThresholds
32
33
 
33
34
  module Price
34
35
  extend Orb::Internal::Type::Union
@@ -5017,6 +5018,184 @@ module Orb
5017
5018
  end
5018
5019
  end
5019
5020
 
5021
+ type grouped_with_min_max_thresholds =
5022
+ {
5023
+ id: String,
5024
+ billable_metric: Orb::BillableMetricTiny?,
5025
+ billing_cycle_configuration: Orb::BillingCycleConfiguration,
5026
+ cadence: Orb::Models::Price::GroupedWithMinMaxThresholds::cadence,
5027
+ conversion_rate: Float?,
5028
+ conversion_rate_config: Orb::Models::Price::GroupedWithMinMaxThresholds::conversion_rate_config?,
5029
+ created_at: Time,
5030
+ credit_allocation: Orb::Allocation?,
5031
+ currency: String,
5032
+ discount: Orb::Models::discount?,
5033
+ external_price_id: String?,
5034
+ fixed_price_quantity: Float?,
5035
+ grouped_with_min_max_thresholds_config: ::Hash[Symbol, top],
5036
+ invoicing_cycle_configuration: Orb::BillingCycleConfiguration?,
5037
+ item: Orb::ItemSlim,
5038
+ maximum: Orb::Maximum?,
5039
+ maximum_amount: String?,
5040
+ metadata: ::Hash[Symbol, String],
5041
+ minimum: Orb::Minimum?,
5042
+ minimum_amount: String?,
5043
+ model_type: :grouped_with_min_max_thresholds,
5044
+ name: String,
5045
+ plan_phase_order: Integer?,
5046
+ price_type: Orb::Models::Price::GroupedWithMinMaxThresholds::price_type,
5047
+ replaces_price_id: String?,
5048
+ dimensional_price_configuration: Orb::DimensionalPriceConfiguration?
5049
+ }
5050
+
5051
+ class GroupedWithMinMaxThresholds < Orb::Internal::Type::BaseModel
5052
+ attr_accessor id: String
5053
+
5054
+ attr_accessor billable_metric: Orb::BillableMetricTiny?
5055
+
5056
+ attr_accessor billing_cycle_configuration: Orb::BillingCycleConfiguration
5057
+
5058
+ attr_accessor cadence: Orb::Models::Price::GroupedWithMinMaxThresholds::cadence
5059
+
5060
+ attr_accessor conversion_rate: Float?
5061
+
5062
+ attr_accessor conversion_rate_config: Orb::Models::Price::GroupedWithMinMaxThresholds::conversion_rate_config?
5063
+
5064
+ attr_accessor created_at: Time
5065
+
5066
+ attr_accessor credit_allocation: Orb::Allocation?
5067
+
5068
+ attr_accessor currency: String
5069
+
5070
+ attr_accessor discount: Orb::Models::discount?
5071
+
5072
+ attr_accessor external_price_id: String?
5073
+
5074
+ attr_accessor fixed_price_quantity: Float?
5075
+
5076
+ attr_accessor grouped_with_min_max_thresholds_config: ::Hash[Symbol, top]
5077
+
5078
+ attr_accessor invoicing_cycle_configuration: Orb::BillingCycleConfiguration?
5079
+
5080
+ attr_accessor item: Orb::ItemSlim
5081
+
5082
+ attr_accessor maximum: Orb::Maximum?
5083
+
5084
+ attr_accessor maximum_amount: String?
5085
+
5086
+ attr_accessor metadata: ::Hash[Symbol, String]
5087
+
5088
+ attr_accessor minimum: Orb::Minimum?
5089
+
5090
+ attr_accessor minimum_amount: String?
5091
+
5092
+ attr_accessor model_type: :grouped_with_min_max_thresholds
5093
+
5094
+ attr_accessor name: String
5095
+
5096
+ attr_accessor plan_phase_order: Integer?
5097
+
5098
+ attr_accessor price_type: Orb::Models::Price::GroupedWithMinMaxThresholds::price_type
5099
+
5100
+ attr_accessor replaces_price_id: String?
5101
+
5102
+ attr_accessor dimensional_price_configuration: Orb::DimensionalPriceConfiguration?
5103
+
5104
+ def initialize: (
5105
+ id: String,
5106
+ billable_metric: Orb::BillableMetricTiny?,
5107
+ billing_cycle_configuration: Orb::BillingCycleConfiguration,
5108
+ cadence: Orb::Models::Price::GroupedWithMinMaxThresholds::cadence,
5109
+ conversion_rate: Float?,
5110
+ conversion_rate_config: Orb::Models::Price::GroupedWithMinMaxThresholds::conversion_rate_config?,
5111
+ created_at: Time,
5112
+ credit_allocation: Orb::Allocation?,
5113
+ currency: String,
5114
+ discount: Orb::Models::discount?,
5115
+ external_price_id: String?,
5116
+ fixed_price_quantity: Float?,
5117
+ grouped_with_min_max_thresholds_config: ::Hash[Symbol, top],
5118
+ invoicing_cycle_configuration: Orb::BillingCycleConfiguration?,
5119
+ item: Orb::ItemSlim,
5120
+ maximum: Orb::Maximum?,
5121
+ maximum_amount: String?,
5122
+ metadata: ::Hash[Symbol, String],
5123
+ minimum: Orb::Minimum?,
5124
+ minimum_amount: String?,
5125
+ name: String,
5126
+ plan_phase_order: Integer?,
5127
+ price_type: Orb::Models::Price::GroupedWithMinMaxThresholds::price_type,
5128
+ replaces_price_id: String?,
5129
+ ?dimensional_price_configuration: Orb::DimensionalPriceConfiguration?,
5130
+ ?model_type: :grouped_with_min_max_thresholds
5131
+ ) -> void
5132
+
5133
+ def to_hash: -> {
5134
+ id: String,
5135
+ billable_metric: Orb::BillableMetricTiny?,
5136
+ billing_cycle_configuration: Orb::BillingCycleConfiguration,
5137
+ cadence: Orb::Models::Price::GroupedWithMinMaxThresholds::cadence,
5138
+ conversion_rate: Float?,
5139
+ conversion_rate_config: Orb::Models::Price::GroupedWithMinMaxThresholds::conversion_rate_config?,
5140
+ created_at: Time,
5141
+ credit_allocation: Orb::Allocation?,
5142
+ currency: String,
5143
+ discount: Orb::Models::discount?,
5144
+ external_price_id: String?,
5145
+ fixed_price_quantity: Float?,
5146
+ grouped_with_min_max_thresholds_config: ::Hash[Symbol, top],
5147
+ invoicing_cycle_configuration: Orb::BillingCycleConfiguration?,
5148
+ item: Orb::ItemSlim,
5149
+ maximum: Orb::Maximum?,
5150
+ maximum_amount: String?,
5151
+ metadata: ::Hash[Symbol, String],
5152
+ minimum: Orb::Minimum?,
5153
+ minimum_amount: String?,
5154
+ model_type: :grouped_with_min_max_thresholds,
5155
+ name: String,
5156
+ plan_phase_order: Integer?,
5157
+ price_type: Orb::Models::Price::GroupedWithMinMaxThresholds::price_type,
5158
+ replaces_price_id: String?,
5159
+ dimensional_price_configuration: Orb::DimensionalPriceConfiguration?
5160
+ }
5161
+
5162
+ type cadence =
5163
+ :one_time | :monthly | :quarterly | :semi_annual | :annual | :custom
5164
+
5165
+ module Cadence
5166
+ extend Orb::Internal::Type::Enum
5167
+
5168
+ ONE_TIME: :one_time
5169
+ MONTHLY: :monthly
5170
+ QUARTERLY: :quarterly
5171
+ SEMI_ANNUAL: :semi_annual
5172
+ ANNUAL: :annual
5173
+ CUSTOM: :custom
5174
+
5175
+ def self?.values: -> ::Array[Orb::Models::Price::GroupedWithMinMaxThresholds::cadence]
5176
+ end
5177
+
5178
+ type conversion_rate_config =
5179
+ Orb::UnitConversionRateConfig | Orb::TieredConversionRateConfig
5180
+
5181
+ module ConversionRateConfig
5182
+ extend Orb::Internal::Type::Union
5183
+
5184
+ def self?.variants: -> ::Array[Orb::Models::Price::GroupedWithMinMaxThresholds::conversion_rate_config]
5185
+ end
5186
+
5187
+ type price_type = :usage_price | :fixed_price
5188
+
5189
+ module PriceType
5190
+ extend Orb::Internal::Type::Enum
5191
+
5192
+ USAGE_PRICE: :usage_price
5193
+ FIXED_PRICE: :fixed_price
5194
+
5195
+ def self?.values: -> ::Array[Orb::Models::Price::GroupedWithMinMaxThresholds::price_type]
5196
+ end
5197
+ end
5198
+
5020
5199
  def self?.variants: -> ::Array[Orb::Models::price]
5021
5200
  end
5022
5201
  end
data/sig/orb/models.rbs CHANGED
@@ -139,6 +139,8 @@ module Orb
139
139
 
140
140
  class DimensionalPriceGroupsAPI = Orb::Models::DimensionalPriceGroupsAPI
141
141
 
142
+ class DimensionalPriceGroupUpdateParams = Orb::Models::DimensionalPriceGroupUpdateParams
143
+
142
144
  module Discount = Orb::Models::Discount
143
145
 
144
146
  class DiscountOverride = Orb::Models::DiscountOverride
@@ -7,6 +7,13 @@ module Orb
7
7
  ?request_options: Orb::request_opts
8
8
  ) -> Orb::DimensionalPriceGroup
9
9
 
10
+ def update: (
11
+ String path_external_dimensional_price_group_id,
12
+ ?body_external_dimensional_price_group_id: String?,
13
+ ?metadata: ::Hash[Symbol, String?]?,
14
+ ?request_options: Orb::request_opts
15
+ ) -> Orb::DimensionalPriceGroup
16
+
10
17
  def initialize: (client: Orb::Client) -> void
11
18
  end
12
19
  end
@@ -17,6 +17,13 @@ module Orb
17
17
  ?request_options: Orb::request_opts
18
18
  ) -> Orb::DimensionalPriceGroup
19
19
 
20
+ def update: (
21
+ String dimensional_price_group_id,
22
+ ?external_dimensional_price_group_id: String?,
23
+ ?metadata: ::Hash[Symbol, String?]?,
24
+ ?request_options: Orb::request_opts
25
+ ) -> Orb::DimensionalPriceGroup
26
+
20
27
  def list: (
21
28
  ?cursor: String?,
22
29
  ?limit: Integer,
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: orb-billing
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.9.0
4
+ version: 1.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Orb
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-07-21 00:00:00.000000000 Z
11
+ date: 2025-07-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: connection_pool
@@ -164,8 +164,10 @@ files:
164
164
  - lib/orb/models/dimensional_price_group_create_params.rb
165
165
  - lib/orb/models/dimensional_price_group_list_params.rb
166
166
  - lib/orb/models/dimensional_price_group_retrieve_params.rb
167
+ - lib/orb/models/dimensional_price_group_update_params.rb
167
168
  - lib/orb/models/dimensional_price_groups.rb
168
169
  - lib/orb/models/dimensional_price_groups/external_dimensional_price_group_id_retrieve_params.rb
170
+ - lib/orb/models/dimensional_price_groups/external_dimensional_price_group_id_update_params.rb
169
171
  - lib/orb/models/discount.rb
170
172
  - lib/orb/models/discount_override.rb
171
173
  - lib/orb/models/evaluate_price_group.rb
@@ -570,8 +572,10 @@ files:
570
572
  - rbi/orb/models/dimensional_price_group_create_params.rbi
571
573
  - rbi/orb/models/dimensional_price_group_list_params.rbi
572
574
  - rbi/orb/models/dimensional_price_group_retrieve_params.rbi
575
+ - rbi/orb/models/dimensional_price_group_update_params.rbi
573
576
  - rbi/orb/models/dimensional_price_groups.rbi
574
577
  - rbi/orb/models/dimensional_price_groups/external_dimensional_price_group_id_retrieve_params.rbi
578
+ - rbi/orb/models/dimensional_price_groups/external_dimensional_price_group_id_update_params.rbi
575
579
  - rbi/orb/models/discount.rbi
576
580
  - rbi/orb/models/discount_override.rbi
577
581
  - rbi/orb/models/evaluate_price_group.rbi
@@ -975,8 +979,10 @@ files:
975
979
  - sig/orb/models/dimensional_price_group_create_params.rbs
976
980
  - sig/orb/models/dimensional_price_group_list_params.rbs
977
981
  - sig/orb/models/dimensional_price_group_retrieve_params.rbs
982
+ - sig/orb/models/dimensional_price_group_update_params.rbs
978
983
  - sig/orb/models/dimensional_price_groups.rbs
979
984
  - sig/orb/models/dimensional_price_groups/external_dimensional_price_group_id_retrieve_params.rbs
985
+ - sig/orb/models/dimensional_price_groups/external_dimensional_price_group_id_update_params.rbs
980
986
  - sig/orb/models/discount.rbs
981
987
  - sig/orb/models/discount_override.rbs
982
988
  - sig/orb/models/evaluate_price_group.rbs