Class: Google::Apis::ContentV2_1::RepricingRule

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/content_v2_1/classes.rb,
lib/google/apis/content_v2_1/representations.rb,
lib/google/apis/content_v2_1/representations.rb

Overview

Represents a repricing rule. A repricing rule is used by shopping serving to adjust transactable offer prices if conditions are met. Next ID: 24

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ RepricingRule

Returns a new instance of RepricingRule.



12411
12412
12413
# File 'lib/google/apis/content_v2_1/classes.rb', line 12411

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#cogs_based_ruleGoogle::Apis::ContentV2_1::RepricingRuleCostOfGoodsSaleRule

A repricing rule that changes the sale price based on cost of goods sale. Corresponds to the JSON property cogsBasedRule



12336
12337
12338
# File 'lib/google/apis/content_v2_1/classes.rb', line 12336

def cogs_based_rule
  @cogs_based_rule
end

#country_codeString

Required. Immutable. CLDR country code (e.g. "US"). Corresponds to the JSON property countryCode

Returns:

  • (String)


12342
12343
12344
# File 'lib/google/apis/content_v2_1/classes.rb', line 12342

def country_code
  @country_code
end

#effective_time_periodGoogle::Apis::ContentV2_1::RepricingRuleEffectiveTime

Required. Time period when the rule should take effect. Corresponds to the JSON property effectiveTimePeriod



12347
12348
12349
# File 'lib/google/apis/content_v2_1/classes.rb', line 12347

def effective_time_period
  @effective_time_period
end

#eligible_offer_matcherGoogle::Apis::ContentV2_1::RepricingRuleEligibleOfferMatcher

Matcher that specifies eligible offers. When the USE_FEED_ATTRIBUTE option is selected, only the repricing_rule_id attribute on the product feed is used to specify offer-rule mapping. When the CUSTOM_FILTER option is selected, only the *_matcher fields are used to filter the offers for offer-rule mapping. If the CUSTOM_FILTER option is selected, an offer needs to satisfy each custom filter matcher to be eligible for a rule. Size limit: the sum of the number of entries in all the matchers should not exceed 20. For example, there can be 15 product ids and 5 brands, but not 10 product ids and 11 brands. Corresponds to the JSON property eligibleOfferMatcher



12359
12360
12361
# File 'lib/google/apis/content_v2_1/classes.rb', line 12359

def eligible_offer_matcher
  @eligible_offer_matcher
end

#language_codeString

Required. Immutable. The two-letter ISO 639-1 language code associated with the repricing rule. Corresponds to the JSON property languageCode

Returns:

  • (String)


12365
12366
12367
# File 'lib/google/apis/content_v2_1/classes.rb', line 12365

def language_code
  @language_code
end

#merchant_idFixnum

Output only. Immutable. Merchant that owns the repricing rule. Corresponds to the JSON property merchantId

Returns:

  • (Fixnum)


12370
12371
12372
# File 'lib/google/apis/content_v2_1/classes.rb', line 12370

def merchant_id
  @merchant_id
end

#pausedBoolean Also known as: paused?

Represents whether a rule is paused. A paused rule will behave like a non- paused rule within CRUD operations, with the major difference that a paused rule will not be evaluated and will have no effect on offers. Corresponds to the JSON property paused

Returns:

  • (Boolean)


12377
12378
12379
# File 'lib/google/apis/content_v2_1/classes.rb', line 12377

def paused
  @paused
end

#restrictionGoogle::Apis::ContentV2_1::RepricingRuleRestriction

Definition of a rule restriction. At least one of the following needs to be true: (1) use_auto_pricing_min_price is true (2) floor.price_delta exists (3) floor.percentage_delta exists If floor.price_delta and floor.percentage_delta are both set on a rule, the highest value will be chosen by the Repricer. In other words, for a product with a price of $50, if the floor.percentage_delta is "-10" and the floor.price_delta is "-12", the offer price will only be lowered $5 (10% lower than the original offer price). Corresponds to the JSON property restriction



12389
12390
12391
# File 'lib/google/apis/content_v2_1/classes.rb', line 12389

def restriction
  @restriction
end

#rule_idString

Output only. Immutable. The ID to uniquely identify each repricing rule. Corresponds to the JSON property ruleId

Returns:

  • (String)


12394
12395
12396
# File 'lib/google/apis/content_v2_1/classes.rb', line 12394

def rule_id
  @rule_id
end

#stats_based_ruleGoogle::Apis::ContentV2_1::RepricingRuleStatsBasedRule

Definition of stats based rule. Corresponds to the JSON property statsBasedRule



12399
12400
12401
# File 'lib/google/apis/content_v2_1/classes.rb', line 12399

def stats_based_rule
  @stats_based_rule
end

#titleString

The title for the rule. Corresponds to the JSON property title

Returns:

  • (String)


12404
12405
12406
# File 'lib/google/apis/content_v2_1/classes.rb', line 12404

def title
  @title
end

#typeString

Required. Immutable. The type of the rule. Corresponds to the JSON property type

Returns:

  • (String)


12409
12410
12411
# File 'lib/google/apis/content_v2_1/classes.rb', line 12409

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



12416
12417
12418
12419
12420
12421
12422
12423
12424
12425
12426
12427
12428
12429
# File 'lib/google/apis/content_v2_1/classes.rb', line 12416

def update!(**args)
  @cogs_based_rule = args[:cogs_based_rule] if args.key?(:cogs_based_rule)
  @country_code = args[:country_code] if args.key?(:country_code)
  @effective_time_period = args[:effective_time_period] if args.key?(:effective_time_period)
  @eligible_offer_matcher = args[:eligible_offer_matcher] if args.key?(:eligible_offer_matcher)
  @language_code = args[:language_code] if args.key?(:language_code)
  @merchant_id = args[:merchant_id] if args.key?(:merchant_id)
  @paused = args[:paused] if args.key?(:paused)
  @restriction = args[:restriction] if args.key?(:restriction)
  @rule_id = args[:rule_id] if args.key?(:rule_id)
  @stats_based_rule = args[:stats_based_rule] if args.key?(:stats_based_rule)
  @title = args[:title] if args.key?(:title)
  @type = args[:type] if args.key?(:type)
end