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.



9308
9309
9310
# File 'lib/google/apis/content_v2/classes.rb', line 9308

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>)


8868
8869
8870
# File 'lib/google/apis/content_v2/classes.rb', line 8868

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>)


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

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)


8879
8880
8881
# File 'lib/google/apis/content_v2/classes.rb', line 8879

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)


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

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>)


8890
8891
8892
# File 'lib/google/apis/content_v2/classes.rb', line 8890

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)


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

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)


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

def age_group
  @age_group
end

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

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



8907
8908
8909
# File 'lib/google/apis/content_v2/classes.rb', line 8907

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)


8913
8914
8915
# File 'lib/google/apis/content_v2/classes.rb', line 8913

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)


8919
8920
8921
# File 'lib/google/apis/content_v2/classes.rb', line 8919

def availability_date
  @availability_date
end

#brandString

Brand of the item. Corresponds to the JSON property brand

Returns:

  • (String)


8924
8925
8926
# File 'lib/google/apis/content_v2/classes.rb', line 8924

def brand
  @brand
end

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

Returns:

  • (String)


8929
8930
8931
# File 'lib/google/apis/content_v2/classes.rb', line 8929

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)


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

def channel
  @channel
end

#colorString

Color of the item. Corresponds to the JSON property color

Returns:

  • (String)


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

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)


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

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)


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

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



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

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`



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

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



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

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)


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

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)


8980
8981
8982
# File 'lib/google/apis/content_v2/classes.rb', line 8980

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)


8985
8986
8987
# File 'lib/google/apis/content_v2/classes.rb', line 8985

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)


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

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)


8995
8996
8997
# File 'lib/google/apis/content_v2/classes.rb', line 8995

def custom_label4
  @custom_label4
end

#descriptionString

Description of the item. Corresponds to the JSON property description

Returns:

  • (String)


9000
9001
9002
# File 'lib/google/apis/content_v2/classes.rb', line 9000

def description
  @description
end

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

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



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

def destinations
  @destinations
end

#display_ads_idString

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

Returns:

  • (String)


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

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)


9015
9016
9017
# File 'lib/google/apis/content_v2/classes.rb', line 9015

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>)


9020
9021
9022
# File 'lib/google/apis/content_v2/classes.rb', line 9020

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)


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

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)


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

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)


9037
9038
9039
# File 'lib/google/apis/content_v2/classes.rb', line 9037

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)


9045
9046
9047
# File 'lib/google/apis/content_v2/classes.rb', line 9045

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)


9051
9052
9053
# File 'lib/google/apis/content_v2/classes.rb', line 9051

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)


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

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)


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

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)


9071
9072
9073
# File 'lib/google/apis/content_v2/classes.rb', line 9071

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)


9078
9079
9080
# File 'lib/google/apis/content_v2/classes.rb', line 9078

def identifier_exists
  @identifier_exists
end

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

Returns:

  • (String)


9084
9085
9086
# File 'lib/google/apis/content_v2/classes.rb', line 9084

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



9089
9090
9091
# File 'lib/google/apis/content_v2/classes.rb', line 9089

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)


9095
9096
9097
# File 'lib/google/apis/content_v2/classes.rb', line 9095

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)


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

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)


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

def kind
  @kind
end

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

Returns:

  • (String)


9112
9113
9114
# File 'lib/google/apis/content_v2/classes.rb', line 9112

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



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

def loyalty_points
  @loyalty_points
end

#materialString

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

Returns:

  • (String)


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

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)


9129
9130
9131
# File 'lib/google/apis/content_v2/classes.rb', line 9129

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)


9134
9135
9136
# File 'lib/google/apis/content_v2/classes.rb', line 9134

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)


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

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)


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

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)


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

def mobile_link
  @mobile_link
end

#mpnString

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

Returns:

  • (String)


9156
9157
9158
# File 'lib/google/apis/content_v2/classes.rb', line 9156

def mpn
  @mpn
end

#multipackFixnum

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

Returns:

  • (Fixnum)


9161
9162
9163
# File 'lib/google/apis/content_v2/classes.rb', line 9161

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)


9170
9171
9172
# File 'lib/google/apis/content_v2/classes.rb', line 9170

def offer_id
  @offer_id
end

#online_onlyBoolean Also known as: online_only?

Deprecated. Corresponds to the JSON property onlineOnly

Returns:

  • (Boolean)


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

def online_only
  @online_only
end

#patternString

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

Returns:

  • (String)


9181
9182
9183
# File 'lib/google/apis/content_v2/classes.rb', line 9181

def pattern
  @pattern
end

#priceGoogle::Apis::ContentV2::Price

Price of the item. Corresponds to the JSON property price



9186
9187
9188
# File 'lib/google/apis/content_v2/classes.rb', line 9186

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)


9191
9192
9193
# File 'lib/google/apis/content_v2/classes.rb', line 9191

def product_type
  @product_type
end

#promotion_idsArray<String>

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

Returns:

  • (Array<String>)


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

def promotion_ids
  @promotion_ids
end

#sale_priceGoogle::Apis::ContentV2::Price

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



9201
9202
9203
# File 'lib/google/apis/content_v2/classes.rb', line 9201

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)


9206
9207
9208
# File 'lib/google/apis/content_v2/classes.rb', line 9206

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)


9212
9213
9214
# File 'lib/google/apis/content_v2/classes.rb', line 9212

def sell_on_google_quantity
  @sell_on_google_quantity
end

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

Shipping rules. Corresponds to the JSON property shipping



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

def shipping
  @shipping
end

#shipping_heightGoogle::Apis::ContentV2::ProductShippingDimension

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



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

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)


9228
9229
9230
# File 'lib/google/apis/content_v2/classes.rb', line 9228

def shipping_label
  @shipping_label
end

#shipping_lengthGoogle::Apis::ContentV2::ProductShippingDimension

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



9233
9234
9235
# File 'lib/google/apis/content_v2/classes.rb', line 9233

def shipping_length
  @shipping_length
end

#shipping_weightGoogle::Apis::ContentV2::ProductShippingWeight

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



9238
9239
9240
# File 'lib/google/apis/content_v2/classes.rb', line 9238

def shipping_weight
  @shipping_weight
end

#shipping_widthGoogle::Apis::ContentV2::ProductShippingDimension

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



9243
9244
9245
# File 'lib/google/apis/content_v2/classes.rb', line 9243

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)


9250
9251
9252
# File 'lib/google/apis/content_v2/classes.rb', line 9250

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)


9257
9258
9259
# File 'lib/google/apis/content_v2/classes.rb', line 9257

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>)


9264
9265
9266
# File 'lib/google/apis/content_v2/classes.rb', line 9264

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)


9270
9271
9272
# File 'lib/google/apis/content_v2/classes.rb', line 9270

def source
  @source
end

#target_countryString

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

Returns:

  • (String)


9275
9276
9277
# File 'lib/google/apis/content_v2/classes.rb', line 9275

def target_country
  @target_country
end

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

Tax information. Corresponds to the JSON property taxes



9280
9281
9282
# File 'lib/google/apis/content_v2/classes.rb', line 9280

def taxes
  @taxes
end

#titleString

Title of the item. Corresponds to the JSON property title

Returns:

  • (String)


9285
9286
9287
# File 'lib/google/apis/content_v2/classes.rb', line 9285

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



9290
9291
9292
# File 'lib/google/apis/content_v2/classes.rb', line 9290

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



9295
9296
9297
# File 'lib/google/apis/content_v2/classes.rb', line 9295

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>)


9301
9302
9303
# File 'lib/google/apis/content_v2/classes.rb', line 9301

def validated_destinations
  @validated_destinations
end

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

Read-only warnings. Corresponds to the JSON property warnings

Returns:



9306
9307
9308
# File 'lib/google/apis/content_v2/classes.rb', line 9306

def warnings
  @warnings
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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
9340
9341
9342
9343
9344
9345
9346
9347
9348
9349
9350
9351
9352
9353
9354
9355
9356
9357
9358
9359
9360
9361
9362
9363
9364
9365
9366
9367
9368
9369
9370
9371
9372
9373
9374
9375
9376
9377
9378
9379
9380
9381
9382
9383
9384
9385
9386
9387
9388
9389
9390
9391
9392
9393
# File 'lib/google/apis/content_v2/classes.rb', line 9313

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