Class: Orb::Models::Price::GroupedAllocation

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, GroupedAllocationConfig, 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(allocation:, grouping_key:, overage_unit_rate:) ⇒ Object

Configuration for grouped_allocation pricing

Parameters:

  • allocation (String)

    Usage allocation per group

  • grouping_key (String)

    How to determine the groups that should each be allocated some quantity

  • overage_unit_rate (String)

    Unit rate for post-allocation



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

Instance Attribute Details

#billable_metricOrb::Models::BillableMetricTiny?

Parameters:

Returns:



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

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

#billing_cycle_configurationOrb::Models::BillingCycleConfiguration



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



7320
7321
7322
# File 'lib/orb/models/price.rb', line 7320

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

#conversion_rateFloat?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :conversion_rate, Float, nil?: true

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

Parameters:

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

Returns:



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

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

#created_atTime

Parameters:

  • value (Time)

Returns:

  • (Time)


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

required :created_at, Time

#credit_allocationOrb::Models::Allocation?

Parameters:

Returns:



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

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

#currencyString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :currency, String

#dimensional_price_configurationOrb::Models::DimensionalPriceConfiguration?



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

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

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

Deprecated.


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

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

#external_price_idString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :external_price_id, String, nil?: true

#fixed_price_quantityFloat?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :fixed_price_quantity, Float, nil?: true

#grouped_allocation_configOrb::Models::Price::GroupedAllocation::GroupedAllocationConfig

Configuration for grouped_allocation pricing

Parameters:

  • value (Orb::Price::GroupedAllocation::GroupedAllocationConfig)

Returns:



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

required :grouped_allocation_config, -> { Orb::Price::GroupedAllocation::GroupedAllocationConfig }

#idString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :id, String

#invoice_grouping_keyString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :invoice_grouping_key, String, nil?: true

#invoicing_cycle_configurationOrb::Models::BillingCycleConfiguration?



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

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:



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

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

#license_typeOrb::Models::Price::GroupedAllocation::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::GroupedAllocation::LicenseType, nil)

Returns:



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

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

#maximumOrb::Models::Maximum?

Deprecated.

Parameters:

Returns:



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

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

#maximum_amountString?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

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})


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

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

#minimumOrb::Models::Minimum?

Deprecated.

Parameters:

Returns:



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

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

#minimum_amountString?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :minimum_amount, String, nil?: true

#model_typeSymbol, :grouped_allocation

The pricing model type

Parameters:

  • value (:grouped_allocation)

Returns:

  • (Symbol, :grouped_allocation)


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

required :model_type, const: :grouped_allocation

#nameString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :name, String

#plan_phase_orderInteger?

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


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

required :plan_phase_order, Integer, nil?: true

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

Parameters:

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

Returns:



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

required :price_type, enum: -> { Orb::Price::GroupedAllocation::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)


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

required :replaces_price_id, String, nil?: true

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


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

Instance Method Details

#to_hash{

Returns:

  • ({)


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

def to_hash: -> {