Class: Orb::Models::Price::UnitWithPercent

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, LicenseType, UnitWithPercentConfig

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(percent:, unit_amount:) ⇒ Object

Configuration for unit_with_percent pricing

Parameters:

  • percent (String)

    What percent, out of 100, of the calculated total to charge

  • unit_amount (String)

    Rate per unit of usage



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

Instance Attribute Details

#billable_metricOrb::Models::BillableMetricTiny?

Parameters:

Returns:



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

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

#billing_cycle_configurationOrb::Models::BillingCycleConfiguration



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



4860
4861
4862
# File 'lib/orb/models/price.rb', line 4860

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

#conversion_rateFloat?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :conversion_rate, Float, nil?: true

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

Parameters:

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

Returns:



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

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

#created_atTime

Parameters:

  • value (Time)

Returns:

  • (Time)


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

required :created_at, Time

#credit_allocationOrb::Models::Allocation?

Parameters:

Returns:



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

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

#currencyString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :currency, String

#dimensional_price_configurationOrb::Models::DimensionalPriceConfiguration?



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

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

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

Deprecated.


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

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

#external_price_idString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :external_price_id, String, nil?: true

#fixed_price_quantityFloat?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :fixed_price_quantity, Float, nil?: true

#idString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :id, String

#invoice_grouping_keyString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :invoice_grouping_key, String, nil?: true

#invoicing_cycle_configurationOrb::Models::BillingCycleConfiguration?



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

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:



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

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

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

Returns:



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

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

#maximumOrb::Models::Maximum?

Deprecated.

Parameters:

Returns:



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

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

#maximum_amountString?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

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


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

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

#minimumOrb::Models::Minimum?

Deprecated.

Parameters:

Returns:



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

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

#minimum_amountString?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :minimum_amount, String, nil?: true

#model_typeSymbol, :unit_with_percent

The pricing model type

Parameters:

  • value (:unit_with_percent)

Returns:

  • (Symbol, :unit_with_percent)


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

required :model_type, const: :unit_with_percent

#nameString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :name, String

#plan_phase_orderInteger?

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


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

required :plan_phase_order, Integer, nil?: true

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

Parameters:

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

Returns:



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

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


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

required :replaces_price_id, String, nil?: true

#unit_with_percent_configOrb::Models::Price::UnitWithPercent::UnitWithPercentConfig

Configuration for unit_with_percent pricing

Parameters:

  • value (Orb::Price::UnitWithPercent::UnitWithPercentConfig)

Returns:



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

required :unit_with_percent_config, -> { Orb::Price::UnitWithPercent::UnitWithPercentConfig }

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


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

Instance Method Details

#to_hash{

Returns:

  • ({)


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

def to_hash: -> {