orb-billing 1.54.0 → 1.55.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 (94) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/README.md +1 -1
  4. data/lib/orb/models/beta/external_plan_id_create_plan_version_params.rb +496 -6
  5. data/lib/orb/models/beta_create_plan_version_params.rb +496 -6
  6. data/lib/orb/models/changed_subscription_resources.rb +2 -2
  7. data/lib/orb/models/credit_block_accounting_sync_failed_webhook_event.rb +4 -4
  8. data/lib/orb/models/credit_block_accounting_sync_succeeded_webhook_event.rb +4 -4
  9. data/lib/orb/models/credit_block_list_invoices_response.rb +4 -4
  10. data/lib/orb/models/credit_block_retrieve_response.rb +4 -4
  11. data/lib/orb/models/credit_block_update_response.rb +4 -4
  12. data/lib/orb/models/customer_credit_ledger_incremented_webhook_event.rb +4 -4
  13. data/lib/orb/models/dimensional_price_groups/price_create_response.rb +2 -2
  14. data/lib/orb/models/invoice.rb +2 -2
  15. data/lib/orb/models/invoice_edited_webhook_event.rb +2 -2
  16. data/lib/orb/models/invoice_fetch_upcoming_response.rb +2 -2
  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_create_params.rb +246 -3
  21. data/lib/orb/models/plan_version.rb +2 -2
  22. data/lib/orb/models/price.rb +416 -1
  23. data/lib/orb/models/price_create_params.rb +231 -3
  24. data/lib/orb/models/price_edited_webhook_event.rb +2 -2
  25. data/lib/orb/models/price_evaluate_multiple_params.rb +238 -3
  26. data/lib/orb/models/price_evaluate_preview_events_params.rb +238 -3
  27. data/lib/orb/models/price_interval.rb +2 -2
  28. data/lib/orb/models/subscription_create_params.rb +495 -6
  29. data/lib/orb/models/subscription_price_intervals_params.rb +238 -3
  30. data/lib/orb/models/subscription_schedule_plan_change_params.rb +496 -6
  31. data/lib/orb/models/webhooks/credit_block_accounting_sync_failed_standard_webhook_event.rb +4 -4
  32. data/lib/orb/models/webhooks/credit_block_accounting_sync_succeeded_standard_webhook_event.rb +4 -4
  33. data/lib/orb/models/webhooks/customer_credit_ledger_incremented_standard_webhook_event.rb +4 -4
  34. data/lib/orb/models/webhooks/invoice_edited_standard_webhook_event.rb +2 -2
  35. data/lib/orb/models/webhooks/price_edited_standard_webhook_event.rb +2 -2
  36. data/lib/orb/resources/credit_blocks.rb +1 -1
  37. data/lib/orb/resources/dimensional_price_groups/prices.rb +1 -1
  38. data/lib/orb/resources/prices/external_price_id.rb +2 -2
  39. data/lib/orb/resources/prices.rb +5 -5
  40. data/lib/orb/version.rb +1 -1
  41. data/rbi/orb/models/beta/external_plan_id_create_plan_version_params.rbi +2939 -2129
  42. data/rbi/orb/models/beta_create_plan_version_params.rbi +2937 -2127
  43. data/rbi/orb/models/changed_subscription_resources.rbi +2 -1
  44. data/rbi/orb/models/credit_block_accounting_sync_failed_webhook_event.rbi +5 -5
  45. data/rbi/orb/models/credit_block_accounting_sync_succeeded_webhook_event.rbi +5 -5
  46. data/rbi/orb/models/credit_block_list_invoices_response.rbi +5 -5
  47. data/rbi/orb/models/credit_block_retrieve_response.rbi +5 -5
  48. data/rbi/orb/models/credit_block_update_response.rbi +5 -5
  49. data/rbi/orb/models/customer_credit_ledger_incremented_webhook_event.rbi +5 -5
  50. data/rbi/orb/models/dimensional_price_groups/price_create_response.rbi +2 -1
  51. data/rbi/orb/models/invoice.rbi +2 -1
  52. data/rbi/orb/models/invoice_edited_webhook_event.rbi +2 -1
  53. data/rbi/orb/models/invoice_fetch_upcoming_response.rbi +2 -1
  54. data/rbi/orb/models/invoice_line_item_create_response.rbi +2 -1
  55. data/rbi/orb/models/per_price_cost.rbi +2 -1
  56. data/rbi/orb/models/plan.rbi +2 -1
  57. data/rbi/orb/models/plan_create_params.rbi +409 -4
  58. data/rbi/orb/models/plan_version.rbi +2 -1
  59. data/rbi/orb/models/price.rbi +716 -1
  60. data/rbi/orb/models/price_create_params.rbi +397 -4
  61. data/rbi/orb/models/price_edited_webhook_event.rbi +2 -1
  62. data/rbi/orb/models/price_evaluate_multiple_params.rbi +397 -4
  63. data/rbi/orb/models/price_evaluate_preview_events_params.rbi +397 -4
  64. data/rbi/orb/models/price_interval.rbi +2 -1
  65. data/rbi/orb/models/subscription_create_params.rbi +2676 -1866
  66. data/rbi/orb/models/subscription_price_intervals_params.rbi +397 -4
  67. data/rbi/orb/models/subscription_schedule_plan_change_params.rbi +2686 -1876
  68. data/rbi/orb/models/webhooks/credit_block_accounting_sync_failed_standard_webhook_event.rbi +5 -5
  69. data/rbi/orb/models/webhooks/credit_block_accounting_sync_succeeded_standard_webhook_event.rbi +5 -5
  70. data/rbi/orb/models/webhooks/customer_credit_ledger_incremented_standard_webhook_event.rbi +5 -5
  71. data/rbi/orb/models/webhooks/invoice_edited_standard_webhook_event.rbi +2 -1
  72. data/rbi/orb/models/webhooks/price_edited_standard_webhook_event.rbi +2 -1
  73. data/rbi/orb/resources/credit_blocks.rbi +1 -1
  74. data/rbi/orb/resources/prices.rbi +2 -1
  75. data/sig/orb/models/beta/external_plan_id_create_plan_version_params.rbs +322 -0
  76. data/sig/orb/models/beta_create_plan_version_params.rbs +322 -0
  77. data/sig/orb/models/credit_block_accounting_sync_failed_webhook_event.rbs +2 -2
  78. data/sig/orb/models/credit_block_accounting_sync_succeeded_webhook_event.rbs +2 -2
  79. data/sig/orb/models/credit_block_list_invoices_response.rbs +2 -2
  80. data/sig/orb/models/credit_block_retrieve_response.rbs +2 -2
  81. data/sig/orb/models/credit_block_update_response.rbs +2 -2
  82. data/sig/orb/models/customer_credit_ledger_incremented_webhook_event.rbs +2 -2
  83. data/sig/orb/models/plan_create_params.rbs +161 -0
  84. data/sig/orb/models/price.rbs +305 -0
  85. data/sig/orb/models/price_create_params.rbs +151 -0
  86. data/sig/orb/models/price_evaluate_multiple_params.rbs +156 -0
  87. data/sig/orb/models/price_evaluate_preview_events_params.rbs +156 -0
  88. data/sig/orb/models/subscription_create_params.rbs +322 -0
  89. data/sig/orb/models/subscription_price_intervals_params.rbs +156 -0
  90. data/sig/orb/models/subscription_schedule_plan_change_params.rbs +322 -0
  91. data/sig/orb/models/webhooks/credit_block_accounting_sync_failed_standard_webhook_event.rbs +2 -2
  92. data/sig/orb/models/webhooks/credit_block_accounting_sync_succeeded_standard_webhook_event.rbs +2 -2
  93. data/sig/orb/models/webhooks/customer_credit_ledger_incremented_standard_webhook_event.rbs +2 -2
  94. metadata +1 -1
@@ -89,6 +89,8 @@ module Orb
89
89
 
90
90
  variant :event_output, -> { Orb::Price::EventOutput }
91
91
 
92
+ variant :unit_with_multiplier, -> { Orb::Price::UnitWithMultiplier }
93
+
92
94
  class Unit < Orb::Internal::Type::BaseModel
93
95
  # @!attribute id
94
96
  #
@@ -14873,8 +14875,421 @@ module Orb
14873
14875
  end
14874
14876
  end
14875
14877
 
14878
+ class UnitWithMultiplier < Orb::Internal::Type::BaseModel
14879
+ # @!attribute id
14880
+ #
14881
+ # @return [String]
14882
+ required :id, String
14883
+
14884
+ # @!attribute billable_metric
14885
+ #
14886
+ # @return [Orb::Models::BillableMetricTiny, nil]
14887
+ required :billable_metric, -> { Orb::BillableMetricTiny }, nil?: true
14888
+
14889
+ # @!attribute billing_cycle_configuration
14890
+ #
14891
+ # @return [Orb::Models::BillingCycleConfiguration]
14892
+ required :billing_cycle_configuration, -> { Orb::BillingCycleConfiguration }
14893
+
14894
+ # @!attribute billing_mode
14895
+ #
14896
+ # @return [Symbol, Orb::Models::Price::UnitWithMultiplier::BillingMode]
14897
+ required :billing_mode, enum: -> { Orb::Price::UnitWithMultiplier::BillingMode }
14898
+
14899
+ # @!attribute cadence
14900
+ #
14901
+ # @return [Symbol, Orb::Models::Price::UnitWithMultiplier::Cadence]
14902
+ required :cadence, enum: -> { Orb::Price::UnitWithMultiplier::Cadence }
14903
+
14904
+ # @!attribute composite_price_filters
14905
+ #
14906
+ # @return [Array<Orb::Models::Price::UnitWithMultiplier::CompositePriceFilter>, nil]
14907
+ required :composite_price_filters,
14908
+ -> { Orb::Internal::Type::ArrayOf[Orb::Price::UnitWithMultiplier::CompositePriceFilter] },
14909
+ nil?: true
14910
+
14911
+ # @!attribute conversion_rate
14912
+ #
14913
+ # @return [Float, nil]
14914
+ required :conversion_rate, Float, nil?: true
14915
+
14916
+ # @!attribute conversion_rate_config
14917
+ #
14918
+ # @return [Orb::Models::UnitConversionRateConfig, Orb::Models::TieredConversionRateConfig, nil]
14919
+ required :conversion_rate_config, union: -> { Orb::ConversionRateConfig }, nil?: true
14920
+
14921
+ # @!attribute created_at
14922
+ #
14923
+ # @return [Time]
14924
+ required :created_at, Time
14925
+
14926
+ # @!attribute credit_allocation
14927
+ #
14928
+ # @return [Orb::Models::Allocation, nil]
14929
+ required :credit_allocation, -> { Orb::Allocation }, nil?: true
14930
+
14931
+ # @!attribute currency
14932
+ #
14933
+ # @return [String]
14934
+ required :currency, String
14935
+
14936
+ # @!attribute discount
14937
+ # @deprecated
14938
+ #
14939
+ # @return [Orb::Models::PercentageDiscount, Orb::Models::TrialDiscount, Orb::Models::UsageDiscount, Orb::Models::AmountDiscount, Orb::Models::Discount::TieredPercentage, nil]
14940
+ required :discount, union: -> { Orb::Discount }, nil?: true
14941
+
14942
+ # @!attribute external_price_id
14943
+ #
14944
+ # @return [String, nil]
14945
+ required :external_price_id, String, nil?: true
14946
+
14947
+ # @!attribute fixed_price_quantity
14948
+ #
14949
+ # @return [Float, nil]
14950
+ required :fixed_price_quantity, Float, nil?: true
14951
+
14952
+ # @!attribute invoice_grouping_key
14953
+ #
14954
+ # @return [String, nil]
14955
+ required :invoice_grouping_key, String, nil?: true
14956
+
14957
+ # @!attribute invoicing_cycle_configuration
14958
+ #
14959
+ # @return [Orb::Models::BillingCycleConfiguration, nil]
14960
+ required :invoicing_cycle_configuration, -> { Orb::BillingCycleConfiguration }, nil?: true
14961
+
14962
+ # @!attribute item
14963
+ # A minimal representation of an Item containing only the essential identifying
14964
+ # information.
14965
+ #
14966
+ # @return [Orb::Models::ItemSlim]
14967
+ required :item, -> { Orb::ItemSlim }
14968
+
14969
+ # @!attribute maximum
14970
+ # @deprecated
14971
+ #
14972
+ # @return [Orb::Models::Maximum, nil]
14973
+ required :maximum, -> { Orb::Maximum }, nil?: true
14974
+
14975
+ # @!attribute maximum_amount
14976
+ # @deprecated
14977
+ #
14978
+ # @return [String, nil]
14979
+ required :maximum_amount, String, nil?: true
14980
+
14981
+ # @!attribute metadata
14982
+ # User specified key-value pairs for the resource. If not present, this defaults
14983
+ # to an empty dictionary. Individual keys can be removed by setting the value to
14984
+ # `null`, and the entire metadata mapping can be cleared by setting `metadata` to
14985
+ # `null`.
14986
+ #
14987
+ # @return [Hash{Symbol=>String}]
14988
+ required :metadata, Orb::Internal::Type::HashOf[String]
14989
+
14990
+ # @!attribute minimum
14991
+ # @deprecated
14992
+ #
14993
+ # @return [Orb::Models::Minimum, nil]
14994
+ required :minimum, -> { Orb::Minimum }, nil?: true
14995
+
14996
+ # @!attribute minimum_amount
14997
+ # @deprecated
14998
+ #
14999
+ # @return [String, nil]
15000
+ required :minimum_amount, String, nil?: true
15001
+
15002
+ # @!attribute model_type
15003
+ # The pricing model type
15004
+ #
15005
+ # @return [Symbol, :unit_with_multiplier]
15006
+ required :model_type, const: :unit_with_multiplier
15007
+
15008
+ # @!attribute name
15009
+ #
15010
+ # @return [String]
15011
+ required :name, String
15012
+
15013
+ # @!attribute plan_phase_order
15014
+ #
15015
+ # @return [Integer, nil]
15016
+ required :plan_phase_order, Integer, nil?: true
15017
+
15018
+ # @!attribute price_type
15019
+ #
15020
+ # @return [Symbol, Orb::Models::Price::UnitWithMultiplier::PriceType]
15021
+ required :price_type, enum: -> { Orb::Price::UnitWithMultiplier::PriceType }
15022
+
15023
+ # @!attribute replaces_price_id
15024
+ # The price id this price replaces. This price will take the place of the replaced
15025
+ # price in plan version migrations.
15026
+ #
15027
+ # @return [String, nil]
15028
+ required :replaces_price_id, String, nil?: true
15029
+
15030
+ # @!attribute unit_with_multiplier_config
15031
+ # Configuration for unit_with_multiplier pricing
15032
+ #
15033
+ # @return [Orb::Models::Price::UnitWithMultiplier::UnitWithMultiplierConfig]
15034
+ required :unit_with_multiplier_config, -> { Orb::Price::UnitWithMultiplier::UnitWithMultiplierConfig }
15035
+
15036
+ # @!attribute dimensional_price_configuration
15037
+ #
15038
+ # @return [Orb::Models::DimensionalPriceConfiguration, nil]
15039
+ optional :dimensional_price_configuration, -> { Orb::DimensionalPriceConfiguration }, nil?: true
15040
+
15041
+ # @!attribute license_type
15042
+ # The LicenseType resource represents a type of license that can be assigned to
15043
+ # users. License types are used during billing by grouping metrics on the
15044
+ # configured grouping key.
15045
+ #
15046
+ # @return [Orb::Models::Price::UnitWithMultiplier::LicenseType, nil]
15047
+ optional :license_type, -> { Orb::Price::UnitWithMultiplier::LicenseType }, nil?: true
15048
+
15049
+ # @!method initialize(id:, billable_metric:, billing_cycle_configuration:, billing_mode:, cadence:, composite_price_filters:, conversion_rate:, conversion_rate_config:, created_at:, credit_allocation:, currency:, discount:, external_price_id:, fixed_price_quantity:, invoice_grouping_key:, invoicing_cycle_configuration:, item:, maximum:, maximum_amount:, metadata:, minimum:, minimum_amount:, name:, plan_phase_order:, price_type:, replaces_price_id:, unit_with_multiplier_config:, dimensional_price_configuration: nil, license_type: nil, model_type: :unit_with_multiplier)
15050
+ # Some parameter documentations has been truncated, see
15051
+ # {Orb::Models::Price::UnitWithMultiplier} for more details.
15052
+ #
15053
+ # @param id [String]
15054
+ #
15055
+ # @param billable_metric [Orb::Models::BillableMetricTiny, nil]
15056
+ #
15057
+ # @param billing_cycle_configuration [Orb::Models::BillingCycleConfiguration]
15058
+ #
15059
+ # @param billing_mode [Symbol, Orb::Models::Price::UnitWithMultiplier::BillingMode]
15060
+ #
15061
+ # @param cadence [Symbol, Orb::Models::Price::UnitWithMultiplier::Cadence]
15062
+ #
15063
+ # @param composite_price_filters [Array<Orb::Models::Price::UnitWithMultiplier::CompositePriceFilter>, nil]
15064
+ #
15065
+ # @param conversion_rate [Float, nil]
15066
+ #
15067
+ # @param conversion_rate_config [Orb::Models::UnitConversionRateConfig, Orb::Models::TieredConversionRateConfig, nil]
15068
+ #
15069
+ # @param created_at [Time]
15070
+ #
15071
+ # @param credit_allocation [Orb::Models::Allocation, nil]
15072
+ #
15073
+ # @param currency [String]
15074
+ #
15075
+ # @param discount [Orb::Models::PercentageDiscount, Orb::Models::TrialDiscount, Orb::Models::UsageDiscount, Orb::Models::AmountDiscount, Orb::Models::Discount::TieredPercentage, nil]
15076
+ #
15077
+ # @param external_price_id [String, nil]
15078
+ #
15079
+ # @param fixed_price_quantity [Float, nil]
15080
+ #
15081
+ # @param invoice_grouping_key [String, nil]
15082
+ #
15083
+ # @param invoicing_cycle_configuration [Orb::Models::BillingCycleConfiguration, nil]
15084
+ #
15085
+ # @param item [Orb::Models::ItemSlim] A minimal representation of an Item containing only the essential identifying in
15086
+ #
15087
+ # @param maximum [Orb::Models::Maximum, nil]
15088
+ #
15089
+ # @param maximum_amount [String, nil]
15090
+ #
15091
+ # @param metadata [Hash{Symbol=>String}] User specified key-value pairs for the resource. If not present, this defaults t
15092
+ #
15093
+ # @param minimum [Orb::Models::Minimum, nil]
15094
+ #
15095
+ # @param minimum_amount [String, nil]
15096
+ #
15097
+ # @param name [String]
15098
+ #
15099
+ # @param plan_phase_order [Integer, nil]
15100
+ #
15101
+ # @param price_type [Symbol, Orb::Models::Price::UnitWithMultiplier::PriceType]
15102
+ #
15103
+ # @param replaces_price_id [String, nil] The price id this price replaces. This price will take the place of the replaced
15104
+ #
15105
+ # @param unit_with_multiplier_config [Orb::Models::Price::UnitWithMultiplier::UnitWithMultiplierConfig] Configuration for unit_with_multiplier pricing
15106
+ #
15107
+ # @param dimensional_price_configuration [Orb::Models::DimensionalPriceConfiguration, nil]
15108
+ #
15109
+ # @param license_type [Orb::Models::Price::UnitWithMultiplier::LicenseType, nil] The LicenseType resource represents a type of license that can be assigned to us
15110
+ #
15111
+ # @param model_type [Symbol, :unit_with_multiplier] The pricing model type
15112
+
15113
+ # @see Orb::Models::Price::UnitWithMultiplier#billing_mode
15114
+ module BillingMode
15115
+ extend Orb::Internal::Type::Enum
15116
+
15117
+ IN_ADVANCE = :in_advance
15118
+ IN_ARREAR = :in_arrear
15119
+
15120
+ # @!method self.values
15121
+ # @return [Array<Symbol>]
15122
+ end
15123
+
15124
+ # @see Orb::Models::Price::UnitWithMultiplier#cadence
15125
+ module Cadence
15126
+ extend Orb::Internal::Type::Enum
15127
+
15128
+ ONE_TIME = :one_time
15129
+ MONTHLY = :monthly
15130
+ QUARTERLY = :quarterly
15131
+ SEMI_ANNUAL = :semi_annual
15132
+ ANNUAL = :annual
15133
+ CUSTOM = :custom
15134
+
15135
+ # @!method self.values
15136
+ # @return [Array<Symbol>]
15137
+ end
15138
+
15139
+ class CompositePriceFilter < Orb::Internal::Type::BaseModel
15140
+ # @!attribute field
15141
+ # The property of the price to filter on.
15142
+ #
15143
+ # @return [Symbol, Orb::Models::Price::UnitWithMultiplier::CompositePriceFilter::Field]
15144
+ required :field, enum: -> { Orb::Price::UnitWithMultiplier::CompositePriceFilter::Field }
15145
+
15146
+ # @!attribute operator
15147
+ # Should prices that match the filter be included or excluded.
15148
+ #
15149
+ # @return [Symbol, Orb::Models::Price::UnitWithMultiplier::CompositePriceFilter::Operator]
15150
+ required :operator, enum: -> { Orb::Price::UnitWithMultiplier::CompositePriceFilter::Operator }
15151
+
15152
+ # @!attribute values
15153
+ # The IDs or values that match this filter.
15154
+ #
15155
+ # @return [Array<String>]
15156
+ required :values, Orb::Internal::Type::ArrayOf[String]
15157
+
15158
+ # @!method initialize(field:, operator:, values:)
15159
+ # @param field [Symbol, Orb::Models::Price::UnitWithMultiplier::CompositePriceFilter::Field] The property of the price to filter on.
15160
+ #
15161
+ # @param operator [Symbol, Orb::Models::Price::UnitWithMultiplier::CompositePriceFilter::Operator] Should prices that match the filter be included or excluded.
15162
+ #
15163
+ # @param values [Array<String>] The IDs or values that match this filter.
15164
+
15165
+ # The property of the price to filter on.
15166
+ #
15167
+ # @see Orb::Models::Price::UnitWithMultiplier::CompositePriceFilter#field
15168
+ module Field
15169
+ extend Orb::Internal::Type::Enum
15170
+
15171
+ PRICE_ID = :price_id
15172
+ ITEM_ID = :item_id
15173
+ PRICE_TYPE = :price_type
15174
+ CURRENCY = :currency
15175
+ PRICING_UNIT_ID = :pricing_unit_id
15176
+
15177
+ # @!method self.values
15178
+ # @return [Array<Symbol>]
15179
+ end
15180
+
15181
+ # Should prices that match the filter be included or excluded.
15182
+ #
15183
+ # @see Orb::Models::Price::UnitWithMultiplier::CompositePriceFilter#operator
15184
+ module Operator
15185
+ extend Orb::Internal::Type::Enum
15186
+
15187
+ INCLUDES = :includes
15188
+ EXCLUDES = :excludes
15189
+
15190
+ # @!method self.values
15191
+ # @return [Array<Symbol>]
15192
+ end
15193
+ end
15194
+
15195
+ # @see Orb::Models::Price::UnitWithMultiplier#price_type
15196
+ module PriceType
15197
+ extend Orb::Internal::Type::Enum
15198
+
15199
+ USAGE_PRICE = :usage_price
15200
+ FIXED_PRICE = :fixed_price
15201
+ COMPOSITE_PRICE = :composite_price
15202
+
15203
+ # @!method self.values
15204
+ # @return [Array<Symbol>]
15205
+ end
15206
+
15207
+ # @see Orb::Models::Price::UnitWithMultiplier#unit_with_multiplier_config
15208
+ class UnitWithMultiplierConfig < Orb::Internal::Type::BaseModel
15209
+ # @!attribute default_display_name
15210
+ # Sub-line label for list-price events that don't set display_name_key. Unlabeled
15211
+ # events with another multiplier are labeled by their multiplier (e.g. '0.8×
15212
+ # rate').
15213
+ #
15214
+ # @return [String]
15215
+ required :default_display_name, String
15216
+
15217
+ # @!attribute display_name_key
15218
+ # Event property holding the sub-line label for the event's rate (e.g.
15219
+ # 'Off-peak').
15220
+ #
15221
+ # @return [String]
15222
+ required :display_name_key, String
15223
+
15224
+ # @!attribute multiplier_key
15225
+ # Event property holding the multiplier applied to unit_amount (e.g. 0.8 for a 20%
15226
+ # discount). Events without a number between 0 and 1000 with at most 12 decimal
15227
+ # places are charged at unit_amount.
15228
+ #
15229
+ # @return [String]
15230
+ required :multiplier_key, String
15231
+
15232
+ # @!attribute unit_amount
15233
+ # List price per unit, before the event's multiplier is applied.
15234
+ #
15235
+ # @return [String]
15236
+ required :unit_amount, String
15237
+
15238
+ # @!method initialize(default_display_name:, display_name_key:, multiplier_key:, unit_amount:)
15239
+ # Some parameter documentations has been truncated, see
15240
+ # {Orb::Models::Price::UnitWithMultiplier::UnitWithMultiplierConfig} for more
15241
+ # details.
15242
+ #
15243
+ # Configuration for unit_with_multiplier pricing
15244
+ #
15245
+ # @param default_display_name [String] Sub-line label for list-price events that don't set display_name_key. Unlabeled
15246
+ #
15247
+ # @param display_name_key [String] Event property holding the sub-line label for the event's rate (e.g. 'Off-peak')
15248
+ #
15249
+ # @param multiplier_key [String] Event property holding the multiplier applied to unit_amount (e.g. 0.8 for a 20%
15250
+ #
15251
+ # @param unit_amount [String] List price per unit, before the event's multiplier is applied.
15252
+ end
15253
+
15254
+ # @see Orb::Models::Price::UnitWithMultiplier#license_type
15255
+ class LicenseType < Orb::Internal::Type::BaseModel
15256
+ # @!attribute id
15257
+ # The Orb-assigned unique identifier for the license type.
15258
+ #
15259
+ # @return [String]
15260
+ required :id, String
15261
+
15262
+ # @!attribute grouping_key
15263
+ # The key used for grouping licenses of this type. This is typically a user
15264
+ # identifier field.
15265
+ #
15266
+ # @return [String]
15267
+ required :grouping_key, String
15268
+
15269
+ # @!attribute name
15270
+ # The name of the license type.
15271
+ #
15272
+ # @return [String]
15273
+ required :name, String
15274
+
15275
+ # @!method initialize(id:, grouping_key:, name:)
15276
+ # Some parameter documentations has been truncated, see
15277
+ # {Orb::Models::Price::UnitWithMultiplier::LicenseType} for more details.
15278
+ #
15279
+ # The LicenseType resource represents a type of license that can be assigned to
15280
+ # users. License types are used during billing by grouping metrics on the
15281
+ # configured grouping key.
15282
+ #
15283
+ # @param id [String] The Orb-assigned unique identifier for the license type.
15284
+ #
15285
+ # @param grouping_key [String] The key used for grouping licenses of this type. This is typically a user identi
15286
+ #
15287
+ # @param name [String] The name of the license type.
15288
+ end
15289
+ end
15290
+
14876
15291
  # @!method self.variants
14877
- # @return [Array(Orb::Models::Price::Unit, Orb::Models::Price::Tiered, Orb::Models::Price::Bulk, Orb::Models::Price::BulkWithFilters, Orb::Models::Price::Package, Orb::Models::Price::Matrix, Orb::Models::Price::ThresholdTotalAmount, Orb::Models::Price::TieredPackage, Orb::Models::Price::TieredWithMinimum, Orb::Models::Price::GroupedTiered, Orb::Models::Price::GroupedTieredMatrix, Orb::Models::Price::TieredPackageWithMinimum, Orb::Models::Price::PackageWithAllocation, Orb::Models::Price::UnitWithPercent, Orb::Models::Price::MatrixWithAllocation, Orb::Models::Price::TieredMatrixWithAllocation, Orb::Models::Price::MatrixWithThresholdDiscounts, Orb::Models::Price::TieredWithProration, Orb::Models::Price::UnitWithProration, Orb::Models::Price::GroupedAllocation, Orb::Models::Price::BulkWithProration, Orb::Models::Price::GroupedWithProratedMinimum, Orb::Models::Price::GroupedWithMeteredMinimum, Orb::Models::Price::GroupedWithMinMaxThresholds, Orb::Models::Price::MatrixWithDisplayName, Orb::Models::Price::GroupedTieredPackage, Orb::Models::Price::MaxGroupTieredPackage, Orb::Models::Price::ScalableMatrixWithUnitPricing, Orb::Models::Price::ScalableMatrixWithTieredPricing, Orb::Models::Price::CumulativeGroupedBulk, Orb::Models::Price::CumulativeGroupedAllocation, Orb::Models::Price::DailyCreditAllowance, Orb::Models::Price::MeteredAllowance, Orb::Models::Price::MinimumComposite, Orb::Models::Price::Percent, Orb::Models::Price::EventOutput)]
15292
+ # @return [Array(Orb::Models::Price::Unit, Orb::Models::Price::Tiered, Orb::Models::Price::Bulk, Orb::Models::Price::BulkWithFilters, Orb::Models::Price::Package, Orb::Models::Price::Matrix, Orb::Models::Price::ThresholdTotalAmount, Orb::Models::Price::TieredPackage, Orb::Models::Price::TieredWithMinimum, Orb::Models::Price::GroupedTiered, Orb::Models::Price::GroupedTieredMatrix, Orb::Models::Price::TieredPackageWithMinimum, Orb::Models::Price::PackageWithAllocation, Orb::Models::Price::UnitWithPercent, Orb::Models::Price::MatrixWithAllocation, Orb::Models::Price::TieredMatrixWithAllocation, Orb::Models::Price::MatrixWithThresholdDiscounts, Orb::Models::Price::TieredWithProration, Orb::Models::Price::UnitWithProration, Orb::Models::Price::GroupedAllocation, Orb::Models::Price::BulkWithProration, Orb::Models::Price::GroupedWithProratedMinimum, Orb::Models::Price::GroupedWithMeteredMinimum, Orb::Models::Price::GroupedWithMinMaxThresholds, Orb::Models::Price::MatrixWithDisplayName, Orb::Models::Price::GroupedTieredPackage, Orb::Models::Price::MaxGroupTieredPackage, Orb::Models::Price::ScalableMatrixWithUnitPricing, Orb::Models::Price::ScalableMatrixWithTieredPricing, Orb::Models::Price::CumulativeGroupedBulk, Orb::Models::Price::CumulativeGroupedAllocation, Orb::Models::Price::DailyCreditAllowance, Orb::Models::Price::MeteredAllowance, Orb::Models::Price::MinimumComposite, Orb::Models::Price::Percent, Orb::Models::Price::EventOutput, Orb::Models::Price::UnitWithMultiplier)]
14878
15293
  end
14879
15294
  end
14880
15295
  end