Class: Orb::Models::Price::UnitWithProration

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, UnitWithProrationConfig

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

Configuration for unit_with_proration pricing

Parameters:

  • unit_amount (String) —

    Rate per unit of usage



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


Instance Attribute Details

#billable_metric ⇒ Orb::Models::BillableMetricTiny?

Parameters:

Returns:



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

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

#billing_cycle_configuration ⇒ Orb::Models::BillingCycleConfiguration



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

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

#billing_mode ⇒ Symbol, Orb::Models::Price::UnitWithProration::BillingMode

Parameters:

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

Returns:



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

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

#cadence ⇒ Symbol, Orb::Models::Price::UnitWithProration::Cadence

Parameters:

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

Returns:



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

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

#composite_price_filters ⇒ Array<Orb::Models::Price::UnitWithProration::CompositePriceFilter>?

Parameters:

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

Returns:



7389
7390
7391
# File 'lib/orb/models/price.rb', line 7389

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

#conversion_rate ⇒ Float?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :conversion_rate, Float, nil?: true

#conversion_rate_config ⇒ Orb::Models::UnitConversionRateConfig, ...

Parameters:

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

Returns:



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

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

#created_at ⇒ Time

Parameters:

  • value (Time)

Returns:

  • (Time)


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

required :created_at, Time

#credit_allocation ⇒ Orb::Models::Allocation?

Parameters:

Returns:



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

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

#currency ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :currency, String

#dimensional_price_configuration ⇒ Orb::Models::DimensionalPriceConfiguration?



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

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

#discount ⇒ Orb::Models::PercentageDiscount, ...

Deprecated.


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

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

#external_price_id ⇒ String?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :external_price_id, String, nil?: true

#fixed_price_quantity ⇒ Float?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :fixed_price_quantity, Float, nil?: true

#id ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :id, String

#invoice_grouping_key ⇒ String?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :invoice_grouping_key, String, nil?: true

#invoicing_cycle_configuration ⇒ Orb::Models::BillingCycleConfiguration?



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

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

#item ⇒ Orb::Models::ItemSlim

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

Parameters:

Returns:



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

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

#license_type ⇒ Orb::Models::Price::UnitWithProration::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::UnitWithProration::LicenseType, nil)

Returns:



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

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

#maximum ⇒ Orb::Models::Maximum?

Deprecated.

Parameters:

Returns:



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

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

#maximum_amount ⇒ String?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :maximum_amount, String, nil?: true

#metadata ⇒ Hash{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})


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

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

#minimum ⇒ Orb::Models::Minimum?

Deprecated.

Parameters:

Returns:



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

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

#minimum_amount ⇒ String?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :minimum_amount, String, nil?: true

#model_type ⇒ Symbol, :unit_with_proration

The pricing model type

Parameters:

  • value (:unit_with_proration)

Returns:

  • (Symbol, :unit_with_proration)


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

required :model_type, const: :unit_with_proration

#name ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :name, String

#plan_phase_order ⇒ Integer?

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


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

required :plan_phase_order, Integer, nil?: true

#price_type ⇒ Symbol, Orb::Models::Price::UnitWithProration::PriceType

Parameters:

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

Returns:



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

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

#replaces_price_id ⇒ String?

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)


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

required :replaces_price_id, String, nil?: true

#unit_with_proration_config ⇒ Orb::Models::Price::UnitWithProration::UnitWithProrationConfig

Configuration for unit_with_proration pricing

Parameters:

  • value (Orb::Price::UnitWithProration::UnitWithProrationConfig)

Returns:



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

required :unit_with_proration_config, -> { Orb::Price::UnitWithProration::UnitWithProrationConfig }

Class Method Details

.values ⇒ Array<Symbol>

Returns:

  • (Array<Symbol>)


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


Instance Method Details

#to_hash ⇒ {

Returns:

  • ({)


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

def to_hash: -> {