Class: Orb::Models::Price::GroupedWithProratedMinimum

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/orb/models/price.rb,
sig/orb/models/price.rbs

Defined Under Namespace

Modules: BillingMode, Cadence, PriceType Classes: CompositePriceFilter, GroupedWithProratedMinimumConfig, LicenseType

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, #inspect, inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(grouping_key:, minimum:, unit_rate:) ⇒ Object

Configuration for grouped_with_prorated_minimum pricing

Parameters:

  • grouping_key (String)

    How to determine the groups that should each have a minimum

  • minimum (String)

    The minimum amount to charge per group

  • unit_rate (String)

    The amount to charge per unit



# File 'lib/orb/models/price.rb', line 8263

Instance Attribute Details

#billable_metricOrb::Models::BillableMetricTiny?

Parameters:

Returns:



8098
# File 'lib/orb/models/price.rb', line 8098

required :billable_metric, -> { Orb::BillableMetricTiny }, nil?: true

#billing_cycle_configurationOrb::Models::BillingCycleConfiguration



8103
# File 'lib/orb/models/price.rb', line 8103

required :billing_cycle_configuration, -> { Orb::BillingCycleConfiguration }

#billing_modeSymbol, Orb::Models::Price::GroupedWithProratedMinimum::BillingMode

Parameters:

  • value (Orb::Models::Price::GroupedWithProratedMinimum::billing_mode)

Returns:



8108
# File 'lib/orb/models/price.rb', line 8108

required :billing_mode, enum: -> { Orb::Price::GroupedWithProratedMinimum::BillingMode }

#cadenceSymbol, Orb::Models::Price::GroupedWithProratedMinimum::Cadence

Parameters:

  • value (Orb::Models::Price::GroupedWithProratedMinimum::cadence)

Returns:



8113
# File 'lib/orb/models/price.rb', line 8113

required :cadence, enum: -> { Orb::Price::GroupedWithProratedMinimum::Cadence }

#composite_price_filtersArray<Orb::Models::Price::GroupedWithProratedMinimum::CompositePriceFilter>?

Parameters:

  • value (::Array[Orb::Price::GroupedWithProratedMinimum::CompositePriceFilter], nil)

Returns:



8118
8119
8120
8121
8122
# File 'lib/orb/models/price.rb', line 8118

required :composite_price_filters,
-> {
  Orb::Internal::Type::ArrayOf[Orb::Price::GroupedWithProratedMinimum::CompositePriceFilter]
},
nil?: true

#conversion_rateFloat?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


8127
# File 'lib/orb/models/price.rb', line 8127

required :conversion_rate, Float, nil?: true

#conversion_rate_configOrb::Models::UnitConversionRateConfig, ...

Parameters:

  • value (Orb::Models::conversion_rate_config, nil)

Returns:



8132
# File 'lib/orb/models/price.rb', line 8132

required :conversion_rate_config, union: -> { Orb::ConversionRateConfig }, nil?: true

#created_atTime

Parameters:

  • value (Time)

Returns:

  • (Time)


8137
# File 'lib/orb/models/price.rb', line 8137

required :created_at, Time

#credit_allocationOrb::Models::Allocation?

Parameters:

Returns:



8142
# File 'lib/orb/models/price.rb', line 8142

required :credit_allocation, -> { Orb::Allocation }, nil?: true

#currencyString

Parameters:

  • value (String)

Returns:

  • (String)


8147
# File 'lib/orb/models/price.rb', line 8147

required :currency, String

#dimensional_price_configurationOrb::Models::DimensionalPriceConfiguration?



8253
# File 'lib/orb/models/price.rb', line 8253

optional :dimensional_price_configuration, -> { Orb::DimensionalPriceConfiguration }, nil?: true

#discountOrb::Models::PercentageDiscount, ...

Deprecated.


8153
# File 'lib/orb/models/price.rb', line 8153

required :discount, union: -> { Orb::Discount }, nil?: true

#external_price_idString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


8158
# File 'lib/orb/models/price.rb', line 8158

required :external_price_id, String, nil?: true

#fixed_price_quantityFloat?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


8163
# File 'lib/orb/models/price.rb', line 8163

required :fixed_price_quantity, Float, nil?: true

#grouped_with_prorated_minimum_configOrb::Models::Price::GroupedWithProratedMinimum::GroupedWithProratedMinimumConfig

Configuration for grouped_with_prorated_minimum pricing

Parameters:

  • value (Orb::Price::GroupedWithProratedMinimum::GroupedWithProratedMinimumConfig)

Returns:



8169
8170
# File 'lib/orb/models/price.rb', line 8169

required :grouped_with_prorated_minimum_config,
-> { Orb::Price::GroupedWithProratedMinimum::GroupedWithProratedMinimumConfig }

#idString

Parameters:

  • value (String)

Returns:

  • (String)


8093
# File 'lib/orb/models/price.rb', line 8093

required :id, String

#invoice_grouping_keyString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


8175
# File 'lib/orb/models/price.rb', line 8175

required :invoice_grouping_key, String, nil?: true

#invoicing_cycle_configurationOrb::Models::BillingCycleConfiguration?



8180
# File 'lib/orb/models/price.rb', line 8180

required :invoicing_cycle_configuration, -> { Orb::BillingCycleConfiguration }, nil?: true

#itemOrb::Models::ItemSlim

A minimal representation of an Item containing only the essential identifying information.

Parameters:

Returns:



8187
# File 'lib/orb/models/price.rb', line 8187

required :item, -> { Orb::ItemSlim }

#license_typeOrb::Models::Price::GroupedWithProratedMinimum::LicenseType?

The LicenseType resource represents a type of license that can be assigned to users. License types are used during billing by grouping metrics on the configured grouping key.

Parameters:

  • value (Orb::Price::GroupedWithProratedMinimum::LicenseType, nil)

Returns:



8261
# File 'lib/orb/models/price.rb', line 8261

optional :license_type, -> { Orb::Price::GroupedWithProratedMinimum::LicenseType }, nil?: true

#maximumOrb::Models::Maximum?

Deprecated.

Parameters:

Returns:



8193
# File 'lib/orb/models/price.rb', line 8193

required :maximum, -> { Orb::Maximum }, nil?: true

#maximum_amountString?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


8199
# File 'lib/orb/models/price.rb', line 8199

required :maximum_amount, String, nil?: true

#metadataHash{Symbol=>String}

User specified key-value pairs for the resource. If not present, this defaults to an empty dictionary. Individual keys can be removed by setting the value to null, and the entire metadata mapping can be cleared by setting metadata to null.

Parameters:

  • value (::Hash[Symbol, String])

Returns:

  • (Hash{Symbol=>String})


8208
# File 'lib/orb/models/price.rb', line 8208

required :metadata, Orb::Internal::Type::HashOf[String]

#minimumOrb::Models::Minimum?

Deprecated.

Parameters:

Returns:



8214
# File 'lib/orb/models/price.rb', line 8214

required :minimum, -> { Orb::Minimum }, nil?: true

#minimum_amountString?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


8220
# File 'lib/orb/models/price.rb', line 8220

required :minimum_amount, String, nil?: true

#model_typeSymbol, :grouped_with_prorated_minimum

The pricing model type

Parameters:

  • value (:grouped_with_prorated_minimum)

Returns:

  • (Symbol, :grouped_with_prorated_minimum)


8226
# File 'lib/orb/models/price.rb', line 8226

required :model_type, const: :grouped_with_prorated_minimum

#nameString

Parameters:

  • value (String)

Returns:

  • (String)


8231
# File 'lib/orb/models/price.rb', line 8231

required :name, String

#plan_phase_orderInteger?

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


8236
# File 'lib/orb/models/price.rb', line 8236

required :plan_phase_order, Integer, nil?: true

#price_typeSymbol, Orb::Models::Price::GroupedWithProratedMinimum::PriceType

Parameters:

  • value (Orb::Models::Price::GroupedWithProratedMinimum::price_type)

Returns:



8241
# File 'lib/orb/models/price.rb', line 8241

required :price_type, enum: -> { Orb::Price::GroupedWithProratedMinimum::PriceType }

#replaces_price_idString?

The price id this price replaces. This price will take the place of the replaced price in plan version migrations.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


8248
# File 'lib/orb/models/price.rb', line 8248

required :replaces_price_id, String, nil?: true

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/orb/models/price.rb', line 8334

Instance Method Details

#to_hash{

Returns:

  • ({)


6170
# File 'sig/orb/models/price.rbs', line 6170

def to_hash: -> {