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.



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

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


8485
8486
8487
# File 'lib/google/apis/content_v2/classes.rb', line 8485

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


8491
8492
8493
# File 'lib/google/apis/content_v2/classes.rb', line 8491

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)


8496
8497
8498
# File 'lib/google/apis/content_v2/classes.rb', line 8496

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)


8502
8503
8504
# File 'lib/google/apis/content_v2/classes.rb', line 8502

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


8507
8508
8509
# File 'lib/google/apis/content_v2/classes.rb', line 8507

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)


8513
8514
8515
# File 'lib/google/apis/content_v2/classes.rb', line 8513

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)


8519
8520
8521
# File 'lib/google/apis/content_v2/classes.rb', line 8519

def age_group
  @age_group
end

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

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



8524
8525
8526
# File 'lib/google/apis/content_v2/classes.rb', line 8524

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)


8530
8531
8532
# File 'lib/google/apis/content_v2/classes.rb', line 8530

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)


8536
8537
8538
# File 'lib/google/apis/content_v2/classes.rb', line 8536

def availability_date
  @availability_date
end

#brandString

Brand of the item. Corresponds to the JSON property brand

Returns:

  • (String)


8541
8542
8543
# File 'lib/google/apis/content_v2/classes.rb', line 8541

def brand
  @brand
end

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

Returns:

  • (String)


8546
8547
8548
# File 'lib/google/apis/content_v2/classes.rb', line 8546

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)


8552
8553
8554
# File 'lib/google/apis/content_v2/classes.rb', line 8552

def channel
  @channel
end

#colorString

Color of the item. Corresponds to the JSON property color

Returns:

  • (String)


8557
8558
8559
# File 'lib/google/apis/content_v2/classes.rb', line 8557

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)


8563
8564
8565
# File 'lib/google/apis/content_v2/classes.rb', line 8563

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)


8568
8569
8570
# File 'lib/google/apis/content_v2/classes.rb', line 8568

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



8573
8574
8575
# File 'lib/google/apis/content_v2/classes.rb', line 8573

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`



8582
8583
8584
# File 'lib/google/apis/content_v2/classes.rb', line 8582

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



8587
8588
8589
# File 'lib/google/apis/content_v2/classes.rb', line 8587

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)


8592
8593
8594
# File 'lib/google/apis/content_v2/classes.rb', line 8592

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)


8597
8598
8599
# File 'lib/google/apis/content_v2/classes.rb', line 8597

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)


8602
8603
8604
# File 'lib/google/apis/content_v2/classes.rb', line 8602

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)


8607
8608
8609
# File 'lib/google/apis/content_v2/classes.rb', line 8607

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)


8612
8613
8614
# File 'lib/google/apis/content_v2/classes.rb', line 8612

def custom_label4
  @custom_label4
end

#descriptionString

Description of the item. Corresponds to the JSON property description

Returns:

  • (String)


8617
8618
8619
# File 'lib/google/apis/content_v2/classes.rb', line 8617

def description
  @description
end

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

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



8622
8623
8624
# File 'lib/google/apis/content_v2/classes.rb', line 8622

def destinations
  @destinations
end

#display_ads_idString

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

Returns:

  • (String)


8627
8628
8629
# File 'lib/google/apis/content_v2/classes.rb', line 8627

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)


8632
8633
8634
# File 'lib/google/apis/content_v2/classes.rb', line 8632

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


8637
8638
8639
# File 'lib/google/apis/content_v2/classes.rb', line 8637

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)


8642
8643
8644
# File 'lib/google/apis/content_v2/classes.rb', line 8642

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)


8647
8648
8649
# File 'lib/google/apis/content_v2/classes.rb', line 8647

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)


8654
8655
8656
# File 'lib/google/apis/content_v2/classes.rb', line 8654

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)


8662
8663
8664
# File 'lib/google/apis/content_v2/classes.rb', line 8662

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)


8668
8669
8670
# File 'lib/google/apis/content_v2/classes.rb', line 8668

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)


8676
8677
8678
# File 'lib/google/apis/content_v2/classes.rb', line 8676

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)


8681
8682
8683
# File 'lib/google/apis/content_v2/classes.rb', line 8681

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)


8688
8689
8690
# File 'lib/google/apis/content_v2/classes.rb', line 8688

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)


8695
8696
8697
# File 'lib/google/apis/content_v2/classes.rb', line 8695

def identifier_exists
  @identifier_exists
end

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

Returns:

  • (String)


8701
8702
8703
# File 'lib/google/apis/content_v2/classes.rb', line 8701

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



8706
8707
8708
# File 'lib/google/apis/content_v2/classes.rb', line 8706

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)


8712
8713
8714
# File 'lib/google/apis/content_v2/classes.rb', line 8712

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)


8718
8719
8720
# File 'lib/google/apis/content_v2/classes.rb', line 8718

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)


8724
8725
8726
# File 'lib/google/apis/content_v2/classes.rb', line 8724

def kind
  @kind
end

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

Returns:

  • (String)


8729
8730
8731
# File 'lib/google/apis/content_v2/classes.rb', line 8729

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



8734
8735
8736
# File 'lib/google/apis/content_v2/classes.rb', line 8734

def loyalty_points
  @loyalty_points
end

#materialString

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

Returns:

  • (String)


8739
8740
8741
# File 'lib/google/apis/content_v2/classes.rb', line 8739

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)


8746
8747
8748
# File 'lib/google/apis/content_v2/classes.rb', line 8746

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)


8751
8752
8753
# File 'lib/google/apis/content_v2/classes.rb', line 8751

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)


8758
8759
8760
# File 'lib/google/apis/content_v2/classes.rb', line 8758

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)


8763
8764
8765
# File 'lib/google/apis/content_v2/classes.rb', line 8763

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)


8768
8769
8770
# File 'lib/google/apis/content_v2/classes.rb', line 8768

def mobile_link
  @mobile_link
end

#mpnString

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

Returns:

  • (String)


8773
8774
8775
# File 'lib/google/apis/content_v2/classes.rb', line 8773

def mpn
  @mpn
end

#multipackFixnum

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

Returns:

  • (Fixnum)


8778
8779
8780
# File 'lib/google/apis/content_v2/classes.rb', line 8778

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)


8787
8788
8789
# File 'lib/google/apis/content_v2/classes.rb', line 8787

def offer_id
  @offer_id
end

#online_onlyBoolean Also known as: online_only?

Deprecated. Corresponds to the JSON property onlineOnly

Returns:

  • (Boolean)


8792
8793
8794
# File 'lib/google/apis/content_v2/classes.rb', line 8792

def online_only
  @online_only
end

#patternString

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

Returns:

  • (String)


8798
8799
8800
# File 'lib/google/apis/content_v2/classes.rb', line 8798

def pattern
  @pattern
end

#priceGoogle::Apis::ContentV2::Price

Price of the item. Corresponds to the JSON property price



8803
8804
8805
# File 'lib/google/apis/content_v2/classes.rb', line 8803

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)


8808
8809
8810
# File 'lib/google/apis/content_v2/classes.rb', line 8808

def product_type
  @product_type
end

#promotion_idsArray<String>

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

Returns:

  • (Array<String>)


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

def promotion_ids
  @promotion_ids
end

#sale_priceGoogle::Apis::ContentV2::Price

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



8818
8819
8820
# File 'lib/google/apis/content_v2/classes.rb', line 8818

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)


8823
8824
8825
# File 'lib/google/apis/content_v2/classes.rb', line 8823

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)


8829
8830
8831
# File 'lib/google/apis/content_v2/classes.rb', line 8829

def sell_on_google_quantity
  @sell_on_google_quantity
end

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

Shipping rules. Corresponds to the JSON property shipping



8834
8835
8836
# File 'lib/google/apis/content_v2/classes.rb', line 8834

def shipping
  @shipping
end

#shipping_heightGoogle::Apis::ContentV2::ProductShippingDimension

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



8839
8840
8841
# File 'lib/google/apis/content_v2/classes.rb', line 8839

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)


8845
8846
8847
# File 'lib/google/apis/content_v2/classes.rb', line 8845

def shipping_label
  @shipping_label
end

#shipping_lengthGoogle::Apis::ContentV2::ProductShippingDimension

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



8850
8851
8852
# File 'lib/google/apis/content_v2/classes.rb', line 8850

def shipping_length
  @shipping_length
end

#shipping_weightGoogle::Apis::ContentV2::ProductShippingWeight

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



8855
8856
8857
# File 'lib/google/apis/content_v2/classes.rb', line 8855

def shipping_weight
  @shipping_weight
end

#shipping_widthGoogle::Apis::ContentV2::ProductShippingDimension

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



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

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)


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

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)


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

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


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

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)


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

def source
  @source
end

#target_countryString

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

Returns:

  • (String)


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

def target_country
  @target_country
end

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

Tax information. Corresponds to the JSON property taxes



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

def taxes
  @taxes
end

#titleString

Title of the item. Corresponds to the JSON property title

Returns:

  • (String)


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

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



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

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



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

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


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

def validated_destinations
  @validated_destinations
end

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

Read-only warnings. Corresponds to the JSON property warnings

Returns:



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

def warnings
  @warnings
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



8930
8931
8932
8933
8934
8935
8936
8937
8938
8939
8940
8941
8942
8943
8944
8945
8946
8947
8948
8949
8950
8951
8952
8953
8954
8955
8956
8957
8958
8959
8960
8961
8962
8963
8964
8965
8966
8967
8968
8969
8970
8971
8972
8973
8974
8975
8976
8977
8978
8979
8980
8981
8982
8983
8984
8985
8986
8987
8988
8989
8990
8991
8992
8993
8994
8995
8996
8997
8998
8999
9000
9001
9002
9003
9004
9005
9006
9007
9008
9009
9010
# File 'lib/google/apis/content_v2/classes.rb', line 8930

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