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.



11794
11795
11796
# File 'lib/google/apis/content_v2_1/classes.rb', line 11794

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



11719
11720
11721
# File 'lib/google/apis/content_v2_1/classes.rb', line 11719

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)


11725
11726
11727
# File 'lib/google/apis/content_v2_1/classes.rb', line 11725

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



11730
11731
11732
# File 'lib/google/apis/content_v2_1/classes.rb', line 11730

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



11742
11743
11744
# File 'lib/google/apis/content_v2_1/classes.rb', line 11742

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)


11748
11749
11750
# File 'lib/google/apis/content_v2_1/classes.rb', line 11748

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)


11753
11754
11755
# File 'lib/google/apis/content_v2_1/classes.rb', line 11753

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)


11760
11761
11762
# File 'lib/google/apis/content_v2_1/classes.rb', line 11760

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



11772
11773
11774
# File 'lib/google/apis/content_v2_1/classes.rb', line 11772

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)


11777
11778
11779
# File 'lib/google/apis/content_v2_1/classes.rb', line 11777

def rule_id
  @rule_id
end

#stats_based_ruleGoogle::Apis::ContentV2_1::RepricingRuleStatsBasedRule

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



11782
11783
11784
# File 'lib/google/apis/content_v2_1/classes.rb', line 11782

def stats_based_rule
  @stats_based_rule
end

#titleString

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

Returns:

  • (String)


11787
11788
11789
# File 'lib/google/apis/content_v2_1/classes.rb', line 11787

def title
  @title
end

#typeString

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

Returns:

  • (String)


11792
11793
11794
# File 'lib/google/apis/content_v2_1/classes.rb', line 11792

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



11799
11800
11801
11802
11803
11804
11805
11806
11807
11808
11809
11810
11811
11812
# File 'lib/google/apis/content_v2_1/classes.rb', line 11799

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