Class: Google::Cloud::CommerceProducer::V1beta::Sku::SkuPrice::TieredPrice

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/commerceproducer/v1beta/sku.rb

Overview

Price structure for a SKU charging a tiered price.

Defined Under Namespace

Classes: PriceTier

Instance Attribute Summary collapse

Instance Attribute Details

#price_tiers::Array<::Google::Cloud::CommerceProducer::V1beta::Sku::SkuPrice::TieredPrice::PriceTier> (readonly)

Returns Output only. The list of price tiers for the SKU, ordered by the start_amount.

The tiers are non-overlapping and are collectively bounded below by zero and unbounded above to cover the entire range of possible metric usage. Each tier is bounded below inclusively by its start_amount and bounded above exclusively by the start_amount of the next tier, or else unbounded above if there is no next tier.

Usage of the metric is aggregated by customer billing account on a monthly basis and billed in a graduated manner according to the price tiers, with each marginal unit of usage priced accoring to the tier in which it falls.

Returns:

  • (::Array<::Google::Cloud::CommerceProducer::V1beta::Sku::SkuPrice::TieredPrice::PriceTier>)

    Output only. The list of price tiers for the SKU, ordered by the start_amount.

    The tiers are non-overlapping and are collectively bounded below by zero and unbounded above to cover the entire range of possible metric usage. Each tier is bounded below inclusively by its start_amount and bounded above exclusively by the start_amount of the next tier, or else unbounded above if there is no next tier.

    Usage of the metric is aggregated by customer billing account on a monthly basis and billed in a graduated manner according to the price tiers, with each marginal unit of usage priced accoring to the tier in which it falls.



740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
# File 'proto_docs/google/cloud/commerceproducer/v1beta/sku.rb', line 740

class TieredPrice
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # A [price
  # tier](https://cloud.google.com/billing/docs/how-to/pricing-table#tiered-pricing)
  # pricing metric usage within a range.
  #
  # Each marginal unit of usage is priced according to the price tier in
  # which it falls.
  # @!attribute [r] start_amount
  #   @return [::Google::Type::Decimal]
  #     Output only. Inclusive lower bound of the tier interval, denominated
  #     in `unit`.
  # @!attribute [r] price
  #   @return [::Google::Type::Money]
  #     Output only. The price per `price_unit_count` of `unit` in the tier.
  #     The price is applied fractionally if the customer's usage within the
  #     tier is not an integer multiple of `price_unit_count`.
  class PriceTier
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#price_unit_count::Google::Type::Decimal (readonly)

Returns Output only. Scaling the unit by the price_unit_count forms the composite "price unit" which is priced by the price tiers.

This scaling factor is in addition to any numerical prefix symbol on the unit, so the same composite "price unit" can be represented in several ways, differing only in their presentation to users.

Examples:

  • $1 per 1 bytes : unit = By, price_unit_count = 1
  • $1000 per 1 kilobytes : unit = kBy, price_unit_count = 1
  • $5000 per 5 kilobytes : unit = kBy, price_unit_count = 5.

Returns:

  • (::Google::Type::Decimal)

    Output only. Scaling the unit by the price_unit_count forms the composite "price unit" which is priced by the price tiers.

    This scaling factor is in addition to any numerical prefix symbol on the unit, so the same composite "price unit" can be represented in several ways, differing only in their presentation to users.

    Examples:

    • $1 per 1 bytes : unit = By, price_unit_count = 1
    • $1000 per 1 kilobytes : unit = kBy, price_unit_count = 1
    • $5000 per 5 kilobytes : unit = kBy, price_unit_count = 5


740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
# File 'proto_docs/google/cloud/commerceproducer/v1beta/sku.rb', line 740

class TieredPrice
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # A [price
  # tier](https://cloud.google.com/billing/docs/how-to/pricing-table#tiered-pricing)
  # pricing metric usage within a range.
  #
  # Each marginal unit of usage is priced according to the price tier in
  # which it falls.
  # @!attribute [r] start_amount
  #   @return [::Google::Type::Decimal]
  #     Output only. Inclusive lower bound of the tier interval, denominated
  #     in `unit`.
  # @!attribute [r] price
  #   @return [::Google::Type::Money]
  #     Output only. The price per `price_unit_count` of `unit` in the tier.
  #     The price is applied fractionally if the customer's usage within the
  #     tier is not an integer multiple of `price_unit_count`.
  class PriceTier
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#unit::String (readonly)

Returns Output only. Usage unit used for defining price tiers and for scaling with the price_unit_count to form the composite price unit.

See https://ucum.org/ucum.html for the format of the price unit. A unitless dimension, such as a count, is represented as 1.

Returns:

  • (::String)

    Output only. Usage unit used for defining price tiers and for scaling with the price_unit_count to form the composite price unit.

    See https://ucum.org/ucum.html for the format of the price unit. A unitless dimension, such as a count, is represented as 1.



740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
# File 'proto_docs/google/cloud/commerceproducer/v1beta/sku.rb', line 740

class TieredPrice
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # A [price
  # tier](https://cloud.google.com/billing/docs/how-to/pricing-table#tiered-pricing)
  # pricing metric usage within a range.
  #
  # Each marginal unit of usage is priced according to the price tier in
  # which it falls.
  # @!attribute [r] start_amount
  #   @return [::Google::Type::Decimal]
  #     Output only. Inclusive lower bound of the tier interval, denominated
  #     in `unit`.
  # @!attribute [r] price
  #   @return [::Google::Type::Money]
  #     Output only. The price per `price_unit_count` of `unit` in the tier.
  #     The price is applied fractionally if the customer's usage within the
  #     tier is not an integer multiple of `price_unit_count`.
  class PriceTier
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#unit_description::String (readonly)

Returns Output only. The display description of the unit, supplied at time of onboarding. This value is recommended to be set at least for dimensionless metrics, but may be empty if no description was provided at time of onboarding.

Returns:

  • (::String)

    Output only. The display description of the unit, supplied at time of onboarding. This value is recommended to be set at least for dimensionless metrics, but may be empty if no description was provided at time of onboarding.



740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
# File 'proto_docs/google/cloud/commerceproducer/v1beta/sku.rb', line 740

class TieredPrice
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # A [price
  # tier](https://cloud.google.com/billing/docs/how-to/pricing-table#tiered-pricing)
  # pricing metric usage within a range.
  #
  # Each marginal unit of usage is priced according to the price tier in
  # which it falls.
  # @!attribute [r] start_amount
  #   @return [::Google::Type::Decimal]
  #     Output only. Inclusive lower bound of the tier interval, denominated
  #     in `unit`.
  # @!attribute [r] price
  #   @return [::Google::Type::Money]
  #     Output only. The price per `price_unit_count` of `unit` in the tier.
  #     The price is applied fractionally if the customer's usage within the
  #     tier is not an integer multiple of `price_unit_count`.
  class PriceTier
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end