Class: Google::Apis::ContentV2::Product

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

Overview

Required product attributes are primarily defined by the products data specification. See the Products Data Specification Help Center article for information. Product data. After inserting, updating, or deleting a product, it may take several minutes before changes take effect.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Product

Returns a new instance of Product.



9254
9255
9256
# File 'lib/google/apis/content_v2/classes.rb', line 9254

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

Instance Attribute Details

Additional URLs of images of the item. Corresponds to the JSON property additionalImageLinks

Returns:

  • (Array<String>)


8814
8815
8816
# File 'lib/google/apis/content_v2/classes.rb', line 8814

def additional_image_links
  @additional_image_links
end

#additional_product_typesArray<String>

Additional categories of the item (formatted as in products data specification) . Corresponds to the JSON property additionalProductTypes

Returns:

  • (Array<String>)


8820
8821
8822
# File 'lib/google/apis/content_v2/classes.rb', line 8820

def additional_product_types
  @additional_product_types
end

#adultBoolean Also known as: adult?

Should be set to true if the item is targeted towards adults. Corresponds to the JSON property adult

Returns:

  • (Boolean)


8825
8826
8827
# File 'lib/google/apis/content_v2/classes.rb', line 8825

def adult
  @adult
end

#adwords_groupingString

Used to group items in an arbitrary way. Only for CPA%, discouraged otherwise. Corresponds to the JSON property adwordsGrouping

Returns:

  • (String)


8831
8832
8833
# File 'lib/google/apis/content_v2/classes.rb', line 8831

def adwords_grouping
  @adwords_grouping
end

#adwords_labelsArray<String>

Similar to adwords_grouping, but only works on CPC. Corresponds to the JSON property adwordsLabels

Returns:

  • (Array<String>)


8836
8837
8838
# File 'lib/google/apis/content_v2/classes.rb', line 8836

def adwords_labels
  @adwords_labels
end

#adwords_redirectString

Allows advertisers to override the item URL when the product is shown within the context of Product Ads. Corresponds to the JSON property adwordsRedirect

Returns:

  • (String)


8842
8843
8844
# File 'lib/google/apis/content_v2/classes.rb', line 8842

def adwords_redirect
  @adwords_redirect
end

#age_groupString

Target age group of the item. Acceptable values are: - "adult" - "infant" - "kids" - "newborn" - "toddler" - "youngAdult" Corresponds to the JSON property ageGroup

Returns:

  • (String)


8848
8849
8850
# File 'lib/google/apis/content_v2/classes.rb', line 8848

def age_group
  @age_group
end

#aspectsArray<Google::Apis::ContentV2::ProductAspect>

Deprecated. Do not use. Corresponds to the JSON property aspects



8853
8854
8855
# File 'lib/google/apis/content_v2/classes.rb', line 8853

def aspects
  @aspects
end

#availabilityString

Availability status of the item. Acceptable values are: - "in stock" - "out of stock" - "preorder" Corresponds to the JSON property availability

Returns:

  • (String)


8859
8860
8861
# File 'lib/google/apis/content_v2/classes.rb', line 8859

def availability
  @availability
end

#availability_dateString

The day a pre-ordered product becomes available for delivery, in ISO 8601 format. Corresponds to the JSON property availabilityDate

Returns:

  • (String)


8865
8866
8867
# File 'lib/google/apis/content_v2/classes.rb', line 8865

def availability_date
  @availability_date
end

#brandString

Brand of the item. Corresponds to the JSON property brand

Returns:

  • (String)


8870
8871
8872
# File 'lib/google/apis/content_v2/classes.rb', line 8870

def brand
  @brand
end

URL for the canonical version of your item's landing page. Corresponds to the JSON property canonicalLink

Returns:

  • (String)


8875
8876
8877
# File 'lib/google/apis/content_v2/classes.rb', line 8875

def canonical_link
  @canonical_link
end

#channelString

Required. The item's channel (online or local). Acceptable values are: - " local" - "online" Corresponds to the JSON property channel

Returns:

  • (String)


8881
8882
8883
# File 'lib/google/apis/content_v2/classes.rb', line 8881

def channel
  @channel
end

#colorString

Color of the item. Corresponds to the JSON property color

Returns:

  • (String)


8886
8887
8888
# File 'lib/google/apis/content_v2/classes.rb', line 8886

def color
  @color
end

#conditionString

Condition or state of the item. Acceptable values are: - "new" - " refurbished" - "used" Corresponds to the JSON property condition

Returns:

  • (String)


8892
8893
8894
# File 'lib/google/apis/content_v2/classes.rb', line 8892

def condition
  @condition
end

#content_languageString

Required. The two-letter ISO 639-1 language code for the item. Corresponds to the JSON property contentLanguage

Returns:

  • (String)


8897
8898
8899
# File 'lib/google/apis/content_v2/classes.rb', line 8897

def content_language
  @content_language
end

#cost_of_goods_soldGoogle::Apis::ContentV2::Price

Cost of goods sold. Used for gross profit reporting. Corresponds to the JSON property costOfGoodsSold



8902
8903
8904
# File 'lib/google/apis/content_v2/classes.rb', line 8902

def cost_of_goods_sold
  @cost_of_goods_sold
end

#custom_attributesArray<Google::Apis::ContentV2::CustomAttribute>

A list of custom (merchant-provided) attributes. It can also be used for submitting any attribute of the feed specification in its generic form (e.g., "name": "size type", "value": "regular" `). This is useful for submitting attributes not explicitly exposed by the API, such as additional attributes used for Buy on Google (formerly known as Shopping Actions). Corresponds to the JSON propertycustomAttributes`



8911
8912
8913
# File 'lib/google/apis/content_v2/classes.rb', line 8911

def custom_attributes
  @custom_attributes
end

#custom_groupsArray<Google::Apis::ContentV2::CustomGroup>

A list of custom (merchant-provided) custom attribute groups. Corresponds to the JSON property customGroups



8916
8917
8918
# File 'lib/google/apis/content_v2/classes.rb', line 8916

def custom_groups
  @custom_groups
end

#custom_label0String

Custom label 0 for custom grouping of items in a Shopping campaign. Corresponds to the JSON property customLabel0

Returns:

  • (String)


8921
8922
8923
# File 'lib/google/apis/content_v2/classes.rb', line 8921

def custom_label0
  @custom_label0
end

#custom_label1String

Custom label 1 for custom grouping of items in a Shopping campaign. Corresponds to the JSON property customLabel1

Returns:

  • (String)


8926
8927
8928
# File 'lib/google/apis/content_v2/classes.rb', line 8926

def custom_label1
  @custom_label1
end

#custom_label2String

Custom label 2 for custom grouping of items in a Shopping campaign. Corresponds to the JSON property customLabel2

Returns:

  • (String)


8931
8932
8933
# File 'lib/google/apis/content_v2/classes.rb', line 8931

def custom_label2
  @custom_label2
end

#custom_label3String

Custom label 3 for custom grouping of items in a Shopping campaign. Corresponds to the JSON property customLabel3

Returns:

  • (String)


8936
8937
8938
# File 'lib/google/apis/content_v2/classes.rb', line 8936

def custom_label3
  @custom_label3
end

#custom_label4String

Custom label 4 for custom grouping of items in a Shopping campaign. Corresponds to the JSON property customLabel4

Returns:

  • (String)


8941
8942
8943
# File 'lib/google/apis/content_v2/classes.rb', line 8941

def custom_label4
  @custom_label4
end

#descriptionString

Description of the item. Corresponds to the JSON property description

Returns:

  • (String)


8946
8947
8948
# File 'lib/google/apis/content_v2/classes.rb', line 8946

def description
  @description
end

#destinationsArray<Google::Apis::ContentV2::ProductDestination>

Specifies the intended destinations for the product. Corresponds to the JSON property destinations



8951
8952
8953
# File 'lib/google/apis/content_v2/classes.rb', line 8951

def destinations
  @destinations
end

#display_ads_idString

An identifier for an item for dynamic remarketing campaigns. Corresponds to the JSON property displayAdsId

Returns:

  • (String)


8956
8957
8958
# File 'lib/google/apis/content_v2/classes.rb', line 8956

def display_ads_id
  @display_ads_id
end

URL directly to your item's landing page for dynamic remarketing campaigns. Corresponds to the JSON property displayAdsLink

Returns:

  • (String)


8961
8962
8963
# File 'lib/google/apis/content_v2/classes.rb', line 8961

def display_ads_link
  @display_ads_link
end

#display_ads_similar_idsArray<String>

Advertiser-specified recommendations. Corresponds to the JSON property displayAdsSimilarIds

Returns:

  • (Array<String>)


8966
8967
8968
# File 'lib/google/apis/content_v2/classes.rb', line 8966

def display_ads_similar_ids
  @display_ads_similar_ids
end

#display_ads_titleString

Title of an item for dynamic remarketing campaigns. Corresponds to the JSON property displayAdsTitle

Returns:

  • (String)


8971
8972
8973
# File 'lib/google/apis/content_v2/classes.rb', line 8971

def display_ads_title
  @display_ads_title
end

#display_ads_valueFloat

Offer margin for dynamic remarketing campaigns. Corresponds to the JSON property displayAdsValue

Returns:

  • (Float)


8976
8977
8978
# File 'lib/google/apis/content_v2/classes.rb', line 8976

def display_ads_value
  @display_ads_value
end

#energy_efficiency_classString

The energy efficiency class as defined in EU directive 2010/30/EU. Acceptable values are: - "A" - "A+" - "A++" - "A+++" - "B" - "C" - "D" - " E" - "F" - "G" Corresponds to the JSON property energyEfficiencyClass

Returns:

  • (String)


8983
8984
8985
# File 'lib/google/apis/content_v2/classes.rb', line 8983

def energy_efficiency_class
  @energy_efficiency_class
end

#expiration_dateString

Date on which the item should expire, as specified upon insertion, in ISO 8601 format. The actual expiration date in Google Shopping is exposed in productstatuses as googleExpirationDate and might be earlier if expirationDate is too far in the future. Corresponds to the JSON property expirationDate

Returns:

  • (String)


8991
8992
8993
# File 'lib/google/apis/content_v2/classes.rb', line 8991

def expiration_date
  @expiration_date
end

#genderString

Target gender of the item. Acceptable values are: - "female" - "male" - " unisex" Corresponds to the JSON property gender

Returns:

  • (String)


8997
8998
8999
# File 'lib/google/apis/content_v2/classes.rb', line 8997

def gender
  @gender
end

#google_product_categoryString

Google's category of the item (see Google product taxonomy). When querying products, this field will contain the user provided value. There is currently no way to get back the auto assigned google product categories through the API. Corresponds to the JSON property googleProductCategory

Returns:

  • (String)


9005
9006
9007
# File 'lib/google/apis/content_v2/classes.rb', line 9005

def google_product_category
  @google_product_category
end

#gtinString

Global Trade Item Number (GTIN) of the item. Corresponds to the JSON property gtin

Returns:

  • (String)


9010
9011
9012
# File 'lib/google/apis/content_v2/classes.rb', line 9010

def gtin
  @gtin
end

#idString

The REST ID of the product. Content API methods that operate on products take this as their productId parameter. The REST ID for a product is of the form channel:contentLanguage: targetCountry: offerId. Corresponds to the JSON property id

Returns:

  • (String)


9017
9018
9019
# File 'lib/google/apis/content_v2/classes.rb', line 9017

def id
  @id
end

#identifier_existsBoolean Also known as: identifier_exists?

False when the item does not have unique product identifiers appropriate to its category, such as GTIN, MPN, and brand. Required according to the Unique Product Identifier Rules for all target countries except for Canada. Corresponds to the JSON property identifierExists

Returns:

  • (Boolean)


9024
9025
9026
# File 'lib/google/apis/content_v2/classes.rb', line 9024

def identifier_exists
  @identifier_exists
end

URL of an image of the item. Corresponds to the JSON property imageLink

Returns:

  • (String)


9030
9031
9032
# File 'lib/google/apis/content_v2/classes.rb', line 9030

def image_link
  @image_link
end

#installmentGoogle::Apis::ContentV2::Installment

Number and amount of installments to pay for an item. Corresponds to the JSON property installment



9035
9036
9037
# File 'lib/google/apis/content_v2/classes.rb', line 9035

def installment
  @installment
end

#is_bundleBoolean Also known as: is_bundle?

Whether the item is a merchant-defined bundle. A bundle is a custom grouping of different products sold by a merchant for a single price. Corresponds to the JSON property isBundle

Returns:

  • (Boolean)


9041
9042
9043
# File 'lib/google/apis/content_v2/classes.rb', line 9041

def is_bundle
  @is_bundle
end

#item_group_idString

Shared identifier for all variants of the same product. Corresponds to the JSON property itemGroupId

Returns:

  • (String)


9047
9048
9049
# File 'lib/google/apis/content_v2/classes.rb', line 9047

def item_group_id
  @item_group_id
end

#kindString

Identifies what kind of resource this is. Value: the fixed string "content# product" Corresponds to the JSON property kind

Returns:

  • (String)


9053
9054
9055
# File 'lib/google/apis/content_v2/classes.rb', line 9053

def kind
  @kind
end

URL directly linking to your item's page on your website. Corresponds to the JSON property link

Returns:

  • (String)


9058
9059
9060
# File 'lib/google/apis/content_v2/classes.rb', line 9058

def link
  @link
end

#loyalty_pointsGoogle::Apis::ContentV2::LoyaltyPoints

Loyalty points that users receive after purchasing the item. Japan only. Corresponds to the JSON property loyaltyPoints



9063
9064
9065
# File 'lib/google/apis/content_v2/classes.rb', line 9063

def loyalty_points
  @loyalty_points
end

#materialString

The material of which the item is made. Corresponds to the JSON property material

Returns:

  • (String)


9068
9069
9070
# File 'lib/google/apis/content_v2/classes.rb', line 9068

def material
  @material
end

#max_energy_efficiency_classString

The energy efficiency class as defined in EU directive 2010/30/EU. Acceptable values are: - "A" - "A+" - "A++" - "A+++" - "B" - "C" - "D" - " E" - "F" - "G" Corresponds to the JSON property maxEnergyEfficiencyClass

Returns:

  • (String)


9075
9076
9077
# File 'lib/google/apis/content_v2/classes.rb', line 9075

def max_energy_efficiency_class
  @max_energy_efficiency_class
end

#max_handling_timeFixnum

Maximal product handling time (in business days). Corresponds to the JSON property maxHandlingTime

Returns:

  • (Fixnum)


9080
9081
9082
# File 'lib/google/apis/content_v2/classes.rb', line 9080

def max_handling_time
  @max_handling_time
end

#min_energy_efficiency_classString

The energy efficiency class as defined in EU directive 2010/30/EU. Acceptable values are: - "A" - "A+" - "A++" - "A+++" - "B" - "C" - "D" - " E" - "F" - "G" Corresponds to the JSON property minEnergyEfficiencyClass

Returns:

  • (String)


9087
9088
9089
# File 'lib/google/apis/content_v2/classes.rb', line 9087

def min_energy_efficiency_class
  @min_energy_efficiency_class
end

#min_handling_timeFixnum

Minimal product handling time (in business days). Corresponds to the JSON property minHandlingTime

Returns:

  • (Fixnum)


9092
9093
9094
# File 'lib/google/apis/content_v2/classes.rb', line 9092

def min_handling_time
  @min_handling_time
end

URL for the mobile-optimized version of your item's landing page. Corresponds to the JSON property mobileLink

Returns:

  • (String)


9097
9098
9099
# File 'lib/google/apis/content_v2/classes.rb', line 9097

def mobile_link
  @mobile_link
end

#mpnString

Manufacturer Part Number (MPN) of the item. Corresponds to the JSON property mpn

Returns:

  • (String)


9102
9103
9104
# File 'lib/google/apis/content_v2/classes.rb', line 9102

def mpn
  @mpn
end

#multipackFixnum

The number of identical products in a merchant-defined multipack. Corresponds to the JSON property multipack

Returns:

  • (Fixnum)


9107
9108
9109
# File 'lib/google/apis/content_v2/classes.rb', line 9107

def multipack
  @multipack
end

#offer_idString

Required. A unique identifier for the item. Leading and trailing whitespaces are stripped and multiple whitespaces are replaced by a single whitespace upon submission. Only valid unicode characters are accepted. See the products feed specification for details. Note: Content API methods that operate on products take the REST ID of the product, not this identifier. Corresponds to the JSON property offerId

Returns:

  • (String)


9116
9117
9118
# File 'lib/google/apis/content_v2/classes.rb', line 9116

def offer_id
  @offer_id
end

#online_onlyBoolean Also known as: online_only?

Deprecated. Corresponds to the JSON property onlineOnly

Returns:

  • (Boolean)


9121
9122
9123
# File 'lib/google/apis/content_v2/classes.rb', line 9121

def online_only
  @online_only
end

#patternString

The item's pattern (e.g. polka dots). Corresponds to the JSON property pattern

Returns:

  • (String)


9127
9128
9129
# File 'lib/google/apis/content_v2/classes.rb', line 9127

def pattern
  @pattern
end

#priceGoogle::Apis::ContentV2::Price

Price of the item. Corresponds to the JSON property price



9132
9133
9134
# File 'lib/google/apis/content_v2/classes.rb', line 9132

def price
  @price
end

#product_typeString

Your category of the item (formatted as in products data specification). Corresponds to the JSON property productType

Returns:

  • (String)


9137
9138
9139
# File 'lib/google/apis/content_v2/classes.rb', line 9137

def product_type
  @product_type
end

#promotion_idsArray<String>

The unique ID of a promotion. Corresponds to the JSON property promotionIds

Returns:

  • (Array<String>)


9142
9143
9144
# File 'lib/google/apis/content_v2/classes.rb', line 9142

def promotion_ids
  @promotion_ids
end

#sale_priceGoogle::Apis::ContentV2::Price

Advertised sale price of the item. Corresponds to the JSON property salePrice



9147
9148
9149
# File 'lib/google/apis/content_v2/classes.rb', line 9147

def sale_price
  @sale_price
end

#sale_price_effective_dateString

Date range during which the item is on sale (see products data specification ). Corresponds to the JSON property salePriceEffectiveDate

Returns:

  • (String)


9152
9153
9154
# File 'lib/google/apis/content_v2/classes.rb', line 9152

def sale_price_effective_date
  @sale_price_effective_date
end

#sell_on_google_quantityFixnum

The quantity of the product that is available for selling on Google. Supported only for online products. Corresponds to the JSON property sellOnGoogleQuantity

Returns:

  • (Fixnum)


9158
9159
9160
# File 'lib/google/apis/content_v2/classes.rb', line 9158

def sell_on_google_quantity
  @sell_on_google_quantity
end

#shippingArray<Google::Apis::ContentV2::ProductShipping>

Shipping rules. Corresponds to the JSON property shipping



9163
9164
9165
# File 'lib/google/apis/content_v2/classes.rb', line 9163

def shipping
  @shipping
end

#shipping_heightGoogle::Apis::ContentV2::ProductShippingDimension

Height of the item for shipping. Corresponds to the JSON property shippingHeight



9168
9169
9170
# File 'lib/google/apis/content_v2/classes.rb', line 9168

def shipping_height
  @shipping_height
end

#shipping_labelString

The shipping label of the product, used to group product in account-level shipping rules. Corresponds to the JSON property shippingLabel

Returns:

  • (String)


9174
9175
9176
# File 'lib/google/apis/content_v2/classes.rb', line 9174

def shipping_label
  @shipping_label
end

#shipping_lengthGoogle::Apis::ContentV2::ProductShippingDimension

Length of the item for shipping. Corresponds to the JSON property shippingLength



9179
9180
9181
# File 'lib/google/apis/content_v2/classes.rb', line 9179

def shipping_length
  @shipping_length
end

#shipping_weightGoogle::Apis::ContentV2::ProductShippingWeight

Weight of the item for shipping. Corresponds to the JSON property shippingWeight



9184
9185
9186
# File 'lib/google/apis/content_v2/classes.rb', line 9184

def shipping_weight
  @shipping_weight
end

#shipping_widthGoogle::Apis::ContentV2::ProductShippingDimension

Width of the item for shipping. Corresponds to the JSON property shippingWidth



9189
9190
9191
# File 'lib/google/apis/content_v2/classes.rb', line 9189

def shipping_width
  @shipping_width
end

#size_systemString

System in which the size is specified. Recommended for apparel items. Acceptable values are: - "AU" - "BR" - "CN" - "DE" - "EU" - "FR" - "IT" - "JP" - "MEX" - "UK" - "US" Corresponds to the JSON property sizeSystem

Returns:

  • (String)


9196
9197
9198
# File 'lib/google/apis/content_v2/classes.rb', line 9196

def size_system
  @size_system
end

#size_typeString

The cut of the item. Recommended for apparel items. Acceptable values are: - " big and tall" - "maternity" - "oversize" - "petite" - "plus" - " regular" Corresponds to the JSON property sizeType

Returns:

  • (String)


9203
9204
9205
# File 'lib/google/apis/content_v2/classes.rb', line 9203

def size_type
  @size_type
end

#sizesArray<String>

Size of the item. Only one value is allowed. For variants with different sizes, insert a separate product for each size with the same itemGroupId value ( see size definition). Corresponds to the JSON property sizes

Returns:

  • (Array<String>)


9210
9211
9212
# File 'lib/google/apis/content_v2/classes.rb', line 9210

def sizes
  @sizes
end

#sourceString

The source of the offer, i.e., how the offer was created. Acceptable values are: - "api" - "crawl" - "feed" Corresponds to the JSON property source

Returns:

  • (String)


9216
9217
9218
# File 'lib/google/apis/content_v2/classes.rb', line 9216

def source
  @source
end

#target_countryString

Required. The CLDR territory code for the item. Corresponds to the JSON property targetCountry

Returns:

  • (String)


9221
9222
9223
# File 'lib/google/apis/content_v2/classes.rb', line 9221

def target_country
  @target_country
end

#taxesArray<Google::Apis::ContentV2::ProductTax>

Tax information. Corresponds to the JSON property taxes



9226
9227
9228
# File 'lib/google/apis/content_v2/classes.rb', line 9226

def taxes
  @taxes
end

#titleString

Title of the item. Corresponds to the JSON property title

Returns:

  • (String)


9231
9232
9233
# File 'lib/google/apis/content_v2/classes.rb', line 9231

def title
  @title
end

#unit_pricing_base_measureGoogle::Apis::ContentV2::ProductUnitPricingBaseMeasure

The preference of the denominator of the unit price. Corresponds to the JSON property unitPricingBaseMeasure



9236
9237
9238
# File 'lib/google/apis/content_v2/classes.rb', line 9236

def unit_pricing_base_measure
  @unit_pricing_base_measure
end

#unit_pricing_measureGoogle::Apis::ContentV2::ProductUnitPricingMeasure

The measure and dimension of an item. Corresponds to the JSON property unitPricingMeasure



9241
9242
9243
# File 'lib/google/apis/content_v2/classes.rb', line 9241

def unit_pricing_measure
  @unit_pricing_measure
end

#validated_destinationsArray<String>

Deprecated. The read-only list of intended destinations which passed validation. Corresponds to the JSON property validatedDestinations

Returns:

  • (Array<String>)


9247
9248
9249
# File 'lib/google/apis/content_v2/classes.rb', line 9247

def validated_destinations
  @validated_destinations
end

#warningsArray<Google::Apis::ContentV2::Error>

Read-only warnings. Corresponds to the JSON property warnings

Returns:



9252
9253
9254
# File 'lib/google/apis/content_v2/classes.rb', line 9252

def warnings
  @warnings
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



9259
9260
9261
9262
9263
9264
9265
9266
9267
9268
9269
9270
9271
9272
9273
9274
9275
9276
9277
9278
9279
9280
9281
9282
9283
9284
9285
9286
9287
9288
9289
9290
9291
9292
9293
9294
9295
9296
9297
9298
9299
9300
9301
9302
9303
9304
9305
9306
9307
9308
9309
9310
9311
9312
9313
9314
9315
9316
9317
9318
9319
9320
9321
9322
9323
9324
9325
9326
9327
9328
9329
9330
9331
9332
9333
9334
9335
9336
9337
9338
9339
# File 'lib/google/apis/content_v2/classes.rb', line 9259

def update!(**args)
  @additional_image_links = args[:additional_image_links] if args.key?(:additional_image_links)
  @additional_product_types = args[:additional_product_types] if args.key?(:additional_product_types)
  @adult = args[:adult] if args.key?(:adult)
  @adwords_grouping = args[:adwords_grouping] if args.key?(:adwords_grouping)
  @adwords_labels = args[:adwords_labels] if args.key?(:adwords_labels)
  @adwords_redirect = args[:adwords_redirect] if args.key?(:adwords_redirect)
  @age_group = args[:age_group] if args.key?(:age_group)
  @aspects = args[:aspects] if args.key?(:aspects)
  @availability = args[:availability] if args.key?(:availability)
  @availability_date = args[:availability_date] if args.key?(:availability_date)
  @brand = args[:brand] if args.key?(:brand)
  @canonical_link = args[:canonical_link] if args.key?(:canonical_link)
  @channel = args[:channel] if args.key?(:channel)
  @color = args[:color] if args.key?(:color)
  @condition = args[:condition] if args.key?(:condition)
  @content_language = args[:content_language] if args.key?(:content_language)
  @cost_of_goods_sold = args[:cost_of_goods_sold] if args.key?(:cost_of_goods_sold)
  @custom_attributes = args[:custom_attributes] if args.key?(:custom_attributes)
  @custom_groups = args[:custom_groups] if args.key?(:custom_groups)
  @custom_label0 = args[:custom_label0] if args.key?(:custom_label0)
  @custom_label1 = args[:custom_label1] if args.key?(:custom_label1)
  @custom_label2 = args[:custom_label2] if args.key?(:custom_label2)
  @custom_label3 = args[:custom_label3] if args.key?(:custom_label3)
  @custom_label4 = args[:custom_label4] if args.key?(:custom_label4)
  @description = args[:description] if args.key?(:description)
  @destinations = args[:destinations] if args.key?(:destinations)
  @display_ads_id = args[:display_ads_id] if args.key?(:display_ads_id)
  @display_ads_link = args[:display_ads_link] if args.key?(:display_ads_link)
  @display_ads_similar_ids = args[:display_ads_similar_ids] if args.key?(:display_ads_similar_ids)
  @display_ads_title = args[:display_ads_title] if args.key?(:display_ads_title)
  @display_ads_value = args[:display_ads_value] if args.key?(:display_ads_value)
  @energy_efficiency_class = args[:energy_efficiency_class] if args.key?(:energy_efficiency_class)
  @expiration_date = args[:expiration_date] if args.key?(:expiration_date)
  @gender = args[:gender] if args.key?(:gender)
  @google_product_category = args[:google_product_category] if args.key?(:google_product_category)
  @gtin = args[:gtin] if args.key?(:gtin)
  @id = args[:id] if args.key?(:id)
  @identifier_exists = args[:identifier_exists] if args.key?(:identifier_exists)
  @image_link = args[:image_link] if args.key?(:image_link)
  @installment = args[:installment] if args.key?(:installment)
  @is_bundle = args[:is_bundle] if args.key?(:is_bundle)
  @item_group_id = args[:item_group_id] if args.key?(:item_group_id)
  @kind = args[:kind] if args.key?(:kind)
  @link = args[:link] if args.key?(:link)
  @loyalty_points = args[:loyalty_points] if args.key?(:loyalty_points)
  @material = args[:material] if args.key?(:material)
  @max_energy_efficiency_class = args[:max_energy_efficiency_class] if args.key?(:max_energy_efficiency_class)
  @max_handling_time = args[:max_handling_time] if args.key?(:max_handling_time)
  @min_energy_efficiency_class = args[:min_energy_efficiency_class] if args.key?(:min_energy_efficiency_class)
  @min_handling_time = args[:min_handling_time] if args.key?(:min_handling_time)
  @mobile_link = args[:mobile_link] if args.key?(:mobile_link)
  @mpn = args[:mpn] if args.key?(:mpn)
  @multipack = args[:multipack] if args.key?(:multipack)
  @offer_id = args[:offer_id] if args.key?(:offer_id)
  @online_only = args[:online_only] if args.key?(:online_only)
  @pattern = args[:pattern] if args.key?(:pattern)
  @price = args[:price] if args.key?(:price)
  @product_type = args[:product_type] if args.key?(:product_type)
  @promotion_ids = args[:promotion_ids] if args.key?(:promotion_ids)
  @sale_price = args[:sale_price] if args.key?(:sale_price)
  @sale_price_effective_date = args[:sale_price_effective_date] if args.key?(:sale_price_effective_date)
  @sell_on_google_quantity = args[:sell_on_google_quantity] if args.key?(:sell_on_google_quantity)
  @shipping = args[:shipping] if args.key?(:shipping)
  @shipping_height = args[:shipping_height] if args.key?(:shipping_height)
  @shipping_label = args[:shipping_label] if args.key?(:shipping_label)
  @shipping_length = args[:shipping_length] if args.key?(:shipping_length)
  @shipping_weight = args[:shipping_weight] if args.key?(:shipping_weight)
  @shipping_width = args[:shipping_width] if args.key?(:shipping_width)
  @size_system = args[:size_system] if args.key?(:size_system)
  @size_type = args[:size_type] if args.key?(:size_type)
  @sizes = args[:sizes] if args.key?(:sizes)
  @source = args[:source] if args.key?(:source)
  @target_country = args[:target_country] if args.key?(:target_country)
  @taxes = args[:taxes] if args.key?(:taxes)
  @title = args[:title] if args.key?(:title)
  @unit_pricing_base_measure = args[:unit_pricing_base_measure] if args.key?(:unit_pricing_base_measure)
  @unit_pricing_measure = args[:unit_pricing_measure] if args.key?(:unit_pricing_measure)
  @validated_destinations = args[:validated_destinations] if args.key?(:validated_destinations)
  @warnings = args[:warnings] if args.key?(:warnings)
end