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.



11682
11683
11684
# File 'lib/google/apis/content_v2_1/classes.rb', line 11682

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



11607
11608
11609
# File 'lib/google/apis/content_v2_1/classes.rb', line 11607

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)


11613
11614
11615
# File 'lib/google/apis/content_v2_1/classes.rb', line 11613

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



11618
11619
11620
# File 'lib/google/apis/content_v2_1/classes.rb', line 11618

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



11630
11631
11632
# File 'lib/google/apis/content_v2_1/classes.rb', line 11630

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)


11636
11637
11638
# File 'lib/google/apis/content_v2_1/classes.rb', line 11636

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)


11641
11642
11643
# File 'lib/google/apis/content_v2_1/classes.rb', line 11641

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)


11648
11649
11650
# File 'lib/google/apis/content_v2_1/classes.rb', line 11648

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



11660
11661
11662
# File 'lib/google/apis/content_v2_1/classes.rb', line 11660

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)


11665
11666
11667
# File 'lib/google/apis/content_v2_1/classes.rb', line 11665

def rule_id
  @rule_id
end

#stats_based_ruleGoogle::Apis::ContentV2_1::RepricingRuleStatsBasedRule

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



11670
11671
11672
# File 'lib/google/apis/content_v2_1/classes.rb', line 11670

def stats_based_rule
  @stats_based_rule
end

#titleString

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

Returns:

  • (String)


11675
11676
11677
# File 'lib/google/apis/content_v2_1/classes.rb', line 11675

def title
  @title
end

#typeString

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

Returns:

  • (String)


11680
11681
11682
# File 'lib/google/apis/content_v2_1/classes.rb', line 11680

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



11687
11688
11689
11690
11691
11692
11693
11694
11695
11696
11697
11698
11699
11700
# File 'lib/google/apis/content_v2_1/classes.rb', line 11687

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