class Google::Apis::CloudchannelV1::GoogleCloudChannelV1Offer

Represents an offer made to resellers for purchase. An offer is associated with a Sku, has a plan for payment, a price, and defines the constraints for buying.

Attributes

constraints[RW]

Represents the constraints for buying the Offer. Corresponds to the JSON property `constraints` @return [Google::Apis::CloudchannelV1::GoogleCloudChannelV1Constraints]

end_time[RW]

Output only. End of the Offer validity time. Corresponds to the JSON property `endTime` @return [String]

marketing_info[RW]

Represents the marketing information for a Product, SKU or Offer. Corresponds to the JSON property `marketingInfo` @return [Google::Apis::CloudchannelV1::GoogleCloudChannelV1MarketingInfo]

name[RW]

Resource Name of the Offer. Format: accounts/`account_id`/offers/`offer_id` Corresponds to the JSON property `name` @return [String]

parameter_definitions[RW]

Parameters required to use current Offer to purchase. Corresponds to the JSON property `parameterDefinitions` @return [Array<Google::Apis::CloudchannelV1::GoogleCloudChannelV1ParameterDefinition>]

plan[RW]

The payment plan for the Offer. Describes how to make a payment. Corresponds to the JSON property `plan` @return [Google::Apis::CloudchannelV1::GoogleCloudChannelV1Plan]

price_by_resources[RW]

Price for each monetizable resource type. Corresponds to the JSON property `priceByResources` @return [Array<Google::Apis::CloudchannelV1::GoogleCloudChannelV1PriceByResource>]

sku[RW]

Represents a product's purchasable Stock Keeping Unit (SKU). SKUs represent the different variations of the product. For example, Google Workspace Business Standard and Google Workspace Business Plus are Google Workspace product SKUs. Corresponds to the JSON property `sku` @return [Google::Apis::CloudchannelV1::GoogleCloudChannelV1Sku]

start_time[RW]

Start of the Offer validity time. Corresponds to the JSON property `startTime` @return [String]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/cloudchannel_v1/classes.rb, line 1471
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/cloudchannel_v1/classes.rb, line 1476
def update!(**args)
  @constraints = args[:constraints] if args.key?(:constraints)
  @end_time = args[:end_time] if args.key?(:end_time)
  @marketing_info = args[:marketing_info] if args.key?(:marketing_info)
  @name = args[:name] if args.key?(:name)
  @parameter_definitions = args[:parameter_definitions] if args.key?(:parameter_definitions)
  @plan = args[:plan] if args.key?(:plan)
  @price_by_resources = args[:price_by_resources] if args.key?(:price_by_resources)
  @sku = args[:sku] if args.key?(:sku)
  @start_time = args[:start_time] if args.key?(:start_time)
end