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.



12084
12085
12086
# File 'lib/google/apis/content_v2_1/classes.rb', line 12084

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



12009
12010
12011
# File 'lib/google/apis/content_v2_1/classes.rb', line 12009

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)


12015
12016
12017
# File 'lib/google/apis/content_v2_1/classes.rb', line 12015

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



12020
12021
12022
# File 'lib/google/apis/content_v2_1/classes.rb', line 12020

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



12032
12033
12034
# File 'lib/google/apis/content_v2_1/classes.rb', line 12032

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)


12038
12039
12040
# File 'lib/google/apis/content_v2_1/classes.rb', line 12038

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)


12043
12044
12045
# File 'lib/google/apis/content_v2_1/classes.rb', line 12043

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)


12050
12051
12052
# File 'lib/google/apis/content_v2_1/classes.rb', line 12050

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



12062
12063
12064
# File 'lib/google/apis/content_v2_1/classes.rb', line 12062

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)


12067
12068
12069
# File 'lib/google/apis/content_v2_1/classes.rb', line 12067

def rule_id
  @rule_id
end

#stats_based_ruleGoogle::Apis::ContentV2_1::RepricingRuleStatsBasedRule

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



12072
12073
12074
# File 'lib/google/apis/content_v2_1/classes.rb', line 12072

def stats_based_rule
  @stats_based_rule
end

#titleString

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

Returns:

  • (String)


12077
12078
12079
# File 'lib/google/apis/content_v2_1/classes.rb', line 12077

def title
  @title
end

#typeString

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

Returns:

  • (String)


12082
12083
12084
# File 'lib/google/apis/content_v2_1/classes.rb', line 12082

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



12089
12090
12091
12092
12093
12094
12095
12096
12097
12098
12099
12100
12101
12102
# File 'lib/google/apis/content_v2_1/classes.rb', line 12089

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