Class: Orb::Models::Price::CumulativeGroupedAllocation

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, CumulativeGroupedAllocationConfig, 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(cumulative_allocation:, group_allocation:, grouping_key:, unit_amount:) ⇒ Object

Configuration for cumulative_grouped_allocation pricing

Parameters:

  • cumulative_allocation (String)

    The overall allocation across all groups

  • group_allocation (String)

    The allocation per individual group

  • grouping_key (String)

    The event property used to group usage before applying allocations

  • unit_amount (String)

    The amount to charge for each unit outside of the allocation



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

Instance Attribute Details

#billable_metricOrb::Models::BillableMetricTiny?

Parameters:

Returns:



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

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

#billing_cycle_configurationOrb::Models::BillingCycleConfiguration



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



11974
11975
11976
11977
11978
# File 'lib/orb/models/price.rb', line 11974

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

#conversion_rateFloat?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :conversion_rate, Float, nil?: true

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

Parameters:

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

Returns:



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

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

#created_atTime

Parameters:

  • value (Time)

Returns:

  • (Time)


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

required :created_at, Time

#credit_allocationOrb::Models::Allocation?

Parameters:

Returns:



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

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

#cumulative_grouped_allocation_configOrb::Models::Price::CumulativeGroupedAllocation::CumulativeGroupedAllocationConfig

Configuration for cumulative_grouped_allocation pricing

Parameters:

  • value (Orb::Price::CumulativeGroupedAllocation::CumulativeGroupedAllocationConfig)

Returns:



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

required :cumulative_grouped_allocation_config,
-> { Orb::Price::CumulativeGroupedAllocation::CumulativeGroupedAllocationConfig }

#currencyString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :currency, String

#dimensional_price_configurationOrb::Models::DimensionalPriceConfiguration?



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

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

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

Deprecated.


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

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

#external_price_idString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :external_price_id, String, nil?: true

#fixed_price_quantityFloat?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :fixed_price_quantity, Float, nil?: true

#idString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :id, String

#invoice_grouping_keyString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :invoice_grouping_key, String, nil?: true

#invoicing_cycle_configurationOrb::Models::BillingCycleConfiguration?



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

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:



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

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

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

Returns:



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

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

#maximumOrb::Models::Maximum?

Deprecated.

Parameters:

Returns:



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

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

#maximum_amountString?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

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


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

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

#minimumOrb::Models::Minimum?

Deprecated.

Parameters:

Returns:



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

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

#minimum_amountString?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :minimum_amount, String, nil?: true

#model_typeSymbol, :cumulative_grouped_allocation

The pricing model type

Parameters:

  • value (:cumulative_grouped_allocation)

Returns:

  • (Symbol, :cumulative_grouped_allocation)


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

required :model_type, const: :cumulative_grouped_allocation

#nameString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :name, String

#plan_phase_orderInteger?

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


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

required :plan_phase_order, Integer, nil?: true

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

Parameters:

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

Returns:



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

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


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

required :replaces_price_id, String, nil?: true

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


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

Instance Method Details

#to_hash{

Returns:

  • ({)


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

def to_hash: -> {