Product class
Required product attributes are primarily defined by the product data specification.
See the Product 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. The following reference documentation lists the field names in the camelCase casing style while the Products Data Specification lists the names in the snake_case casing style.
Constructors
-
Product.new({List<
String> ? additionalImageLinks, String? additionalSizeType, String? adsGrouping, List<String> ? adsLabels, String? adsRedirect, bool? adult, String? ageGroup, Price? autoPricingMinPrice, String? availability, String? availabilityDate, String? brand, String? canonicalLink, List<ProductCertification> ? certifications, String? channel, List<CloudExportAdditionalProperties> ? cloudExportAdditionalProperties, String? color, String? condition, String? contentLanguage, Price? costOfGoodsSold, List<CustomAttribute> ? customAttributes, String? customLabel0, String? customLabel1, String? customLabel2, String? customLabel3, String? customLabel4, String? description, String? disclosureDate, String? displayAdsId, String? displayAdsLink, List<String> ? displayAdsSimilarIds, String? displayAdsTitle, double? displayAdsValue, String? energyEfficiencyClass, List<String> ? excludedDestinations, String? expirationDate, String? externalSellerId, String? feedLabel, List<FreeShippingThreshold> ? freeShippingThreshold, String? gender, String? googleProductCategory, String? gtin, String? id, bool? identifierExists, String? imageLink, List<String> ? includedDestinations, Installment? installment, bool? isBundle, String? itemGroupId, String? kind, List<String> ? lifestyleImageLinks, String? link, String? linkTemplate, LoyaltyProgram? loyaltyProgram, List<LoyaltyProgram> ? loyaltyPrograms, String? material, String? maxEnergyEfficiencyClass, String? maxHandlingTime, Price? maximumRetailPrice, String? minEnergyEfficiencyClass, String? minHandlingTime, String? mobileLink, String? mobileLinkTemplate, String? mpn, String? multipack, String? offerId, String? pattern, String? pause, String? pickupMethod, String? pickupSla, Price? price, List<ProductProductDetail> ? productDetails, ProductDimension? productHeight, List<String> ? productHighlights, ProductDimension? productLength, List<String> ? productTypes, ProductWeight? productWeight, ProductDimension? productWidth, List<String> ? promotionIds, Price? salePrice, String? salePriceEffectiveDate, String? sellOnGoogleQuantity, List<ProductShipping> ? shipping, ProductShippingDimension? shippingHeight, String? shippingLabel, ProductShippingDimension? shippingLength, ProductShippingWeight? shippingWeight, ProductShippingDimension? shippingWidth, List<String> ? shoppingAdsExcludedCountries, String? sizeSystem, String? sizeType, List<String> ? sizes, String? source, ProductStructuredDescription? structuredDescription, ProductStructuredTitle? structuredTitle, ProductSubscriptionCost? subscriptionCost, List<ProductSustainabilityIncentive> ? sustainabilityIncentives, String? targetCountry, String? taxCategory, List<ProductTax> ? taxes, String? title, String? transitTimeLabel, ProductUnitPricingBaseMeasure? unitPricingBaseMeasure, ProductUnitPricingMeasure? unitPricingMeasure, String? virtualModelLink}) - Product.fromJson(Map json_)
Properties
-
additionalImageLinks
↔ List<
String> ? -
Additional URLs of images of the item.
getter/setter pair
- additionalSizeType ↔ String?
-
Additional cut of the item.
getter/setter pair
- adsGrouping ↔ String?
-
Used to group items in an arbitrary way.
getter/setter pair
-
adsLabels
↔ List<
String> ? -
Similar to ads_grouping, but only works on CPC.
getter/setter pair
- adsRedirect ↔ String?
-
Allows advertisers to override the item URL when the product is shown
within the context of Product Ads.
getter/setter pair
- adult ↔ bool?
-
Should be set to true if the item is targeted towards adults.
getter/setter pair
- ageGroup ↔ String?
-
Target age group of the item.
getter/setter pair
- autoPricingMinPrice ↔ Price?
-
A safeguard in the [Automated
Discounts](//support.google.com/merchants/answer/10295759) and [Dynamic
Promotions](//support.google.com/merchants/answer/13949249) projects,
ensuring that discounts on merchants' offers do not fall below this value,
thereby preserving the offer's value and profitability.
getter/setter pair
- availability ↔ String?
-
Availability status of the item.
getter/setter pair
- availabilityDate ↔ String?
-
The day a pre-ordered product becomes available for delivery, in ISO 8601
format.
getter/setter pair
- brand ↔ String?
-
Brand of the item.
getter/setter pair
- canonicalLink ↔ String?
-
URL for the canonical version of your item's landing page.
getter/setter pair
-
certifications
↔ List<
ProductCertification> ? -
Product
certification,
introduced for EU energy efficiency labeling compliance using the
EU EPREL database.
getter/setter pair
- channel ↔ String?
-
The item's channel (online or local).
getter/setter pair
-
cloudExportAdditionalProperties
↔ List<
CloudExportAdditionalProperties> ? -
Extra fields to export to the Cloud Retail program.
getter/setter pair
- color ↔ String?
-
Color of the item.
getter/setter pair
- condition ↔ String?
-
Condition or state of the item.
getter/setter pair
- contentLanguage ↔ String?
-
The two-letter ISO 639-1 language code for the item.
getter/setter pair
- costOfGoodsSold ↔ Price?
-
Cost of goods sold.
getter/setter pair
-
customAttributes
↔ List<
CustomAttribute> ? -
A list of custom (merchant-provided) attributes.
getter/setter pair
- customLabel0 ↔ String?
-
Custom label 0 for custom grouping of items in a Shopping campaign.
getter/setter pair
- customLabel1 ↔ String?
-
Custom label 1 for custom grouping of items in a Shopping campaign.
getter/setter pair
- customLabel2 ↔ String?
-
Custom label 2 for custom grouping of items in a Shopping campaign.
getter/setter pair
- customLabel3 ↔ String?
-
Custom label 3 for custom grouping of items in a Shopping campaign.
getter/setter pair
- customLabel4 ↔ String?
-
Custom label 4 for custom grouping of items in a Shopping campaign.
getter/setter pair
- description ↔ String?
-
Description of the item.
getter/setter pair
- disclosureDate ↔ String?
-
The date time when an offer becomes visible in search results across
Google’s YouTube surfaces, in
ISO 8601 format.
getter/setter pair
- displayAdsId ↔ String?
-
An identifier for an item for dynamic remarketing campaigns.
getter/setter pair
- displayAdsLink ↔ String?
-
URL directly to your item's landing page for dynamic remarketing
campaigns.
getter/setter pair
-
displayAdsSimilarIds
↔ List<
String> ? -
Advertiser-specified recommendations.
getter/setter pair
- displayAdsTitle ↔ String?
-
Title of an item for dynamic remarketing campaigns.
getter/setter pair
- displayAdsValue ↔ double?
-
Offer margin for dynamic remarketing campaigns.
getter/setter pair
- energyEfficiencyClass ↔ String?
-
The energy efficiency class as defined in EU directive 2010/30/EU.
getter/setter pair
-
excludedDestinations
↔ List<
String> ? -
The list of [destinations to
exclude](//support.google.com/merchants/answer/6324486) for this target
(corresponds to cleared check boxes in Merchant Center).
getter/setter pair
- expirationDate ↔ String?
-
Date on which the item should expire, as specified upon insertion, in ISO
8601 format.
getter/setter pair
- externalSellerId ↔ String?
-
Required for multi-seller accounts.
getter/setter pair
- feedLabel ↔ String?
-
Feed label for the item.
getter/setter pair
-
freeShippingThreshold
↔ List<
FreeShippingThreshold> ? -
Conditions to be met for a product to have free shipping.
getter/setter pair
- gender ↔ String?
-
Target gender of the item.
getter/setter pair
- googleProductCategory ↔ String?
-
Google's category of the item (see
Google product taxonomy).
getter/setter pair
- gtin ↔ String?
-
Global Trade Item Number (GTIN) of the item.
getter/setter pair
- hashCode → int
-
The hash code for this object.
no setterinherited
- id ↔ String?
-
The REST ID of the product.
getter/setter pair
- identifierExists ↔ bool?
-
False when the item does not have unique product identifiers appropriate
to its category, such as GTIN, MPN, and brand.
getter/setter pair
- imageLink ↔ String?
-
URL of an image of the item.
getter/setter pair
-
includedDestinations
↔ List<
String> ? -
The list of [destinations to
include](//support.google.com/merchants/answer/7501026) for this target
(corresponds to checked check boxes in Merchant Center).
getter/setter pair
- installment ↔ Installment?
-
Number and amount of installments to pay for an item.
getter/setter pair
- isBundle ↔ bool?
-
Whether the item is a merchant-defined bundle.
getter/setter pair
- itemGroupId ↔ String?
-
Shared identifier for all variants of the same product.
getter/setter pair
- kind ↔ String?
-
Identifies what kind of resource this is.
getter/setter pair
-
lifestyleImageLinks
↔ List<
String> ? -
Additional URLs of lifestyle images of the item.
getter/setter pair
- link ↔ String?
-
URL directly linking to your item's page on your website.
getter/setter pair
- linkTemplate ↔ String?
-
URL template for merchant hosted local storefront.
getter/setter pair
- loyaltyProgram ↔ LoyaltyProgram?
-
Loyalty program information that is used to surface loyalty benefits ( for
example, better pricing, points, etc) to the user of this item.
getter/setter pair
-
loyaltyPrograms
↔ List<
LoyaltyProgram> ? -
A list of loyalty program information that is used to surface loyalty
benefits (for example, better pricing, points, etc) to the user of this
item.
getter/setter pair
- material ↔ String?
-
The material of which the item is made.
getter/setter pair
- maxEnergyEfficiencyClass ↔ String?
-
The energy efficiency class as defined in EU directive 2010/30/EU.
getter/setter pair
- maxHandlingTime ↔ String?
-
Maximal product handling time (in business days).
getter/setter pair
- maximumRetailPrice ↔ Price?
-
Maximum retail price (MRP) of the item.
getter/setter pair
- minEnergyEfficiencyClass ↔ String?
-
The energy efficiency class as defined in EU directive 2010/30/EU.
getter/setter pair
- minHandlingTime ↔ String?
-
Minimal product handling time (in business days).
getter/setter pair
- mobileLink ↔ String?
-
URL for the mobile-optimized version of your item's landing page.
getter/setter pair
- mobileLinkTemplate ↔ String?
-
URL template for merchant hosted local storefront optimized for mobile
devices.
getter/setter pair
- mpn ↔ String?
-
Manufacturer Part Number (MPN) of the item.
getter/setter pair
- multipack ↔ String?
-
The number of identical products in a merchant-defined multipack.
getter/setter pair
- offerId ↔ String?
-
A unique identifier for the item.
getter/setter pair
- pattern ↔ String?
-
The item's pattern (for example, polka dots).
getter/setter pair
- pause ↔ String?
-
Publication of this item should be temporarily paused.
getter/setter pair
- pickupMethod ↔ String?
-
The pick up option for the item.
getter/setter pair
- pickupSla ↔ String?
-
Item store pickup timeline.
getter/setter pair
- price ↔ Price?
-
Price of the item.
getter/setter pair
-
productDetails
↔ List<
ProductProductDetail> ? -
Technical specification or additional product details.
getter/setter pair
- productHeight ↔ ProductDimension?
-
The height of the product in the units provided.
getter/setter pair
-
productHighlights
↔ List<
String> ? -
Bullet points describing the most relevant highlights of a product.
getter/setter pair
- productLength ↔ ProductDimension?
-
The length of the product in the units provided.
getter/setter pair
-
productTypes
↔ List<
String> ? -
Categories of the item (formatted as in product data specification).
getter/setter pair
- productWeight ↔ ProductWeight?
-
The weight of the product in the units provided.
getter/setter pair
- productWidth ↔ ProductDimension?
-
The width of the product in the units provided.
getter/setter pair
-
promotionIds
↔ List<
String> ? -
The unique ID of a promotion.
getter/setter pair
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- salePrice ↔ Price?
-
Advertised sale price of the item.
getter/setter pair
- salePriceEffectiveDate ↔ String?
-
Date range during which the item is on sale (see product data
specification ).
getter/setter pair
- sellOnGoogleQuantity ↔ String?
-
The quantity of the product that is available for selling on Google.
getter/setter pair
-
shipping
↔ List<
ProductShipping> ? -
Shipping rules.
getter/setter pair
- shippingHeight ↔ ProductShippingDimension?
-
Height of the item for shipping.
getter/setter pair
- shippingLabel ↔ String?
-
The shipping label of the product, used to group product in account-level
shipping rules.
getter/setter pair
- shippingLength ↔ ProductShippingDimension?
-
Length of the item for shipping.
getter/setter pair
- shippingWeight ↔ ProductShippingWeight?
-
Weight of the item for shipping.
getter/setter pair
- shippingWidth ↔ ProductShippingDimension?
-
Width of the item for shipping.
getter/setter pair
-
shoppingAdsExcludedCountries
↔ List<
String> ? -
List of country codes (ISO 3166-1 alpha-2) to exclude the offer from
Shopping Ads destination.
getter/setter pair
-
sizes
↔ List<
String> ? -
Size of the item.
getter/setter pair
- sizeSystem ↔ String?
-
System in which the size is specified.
getter/setter pair
- sizeType ↔ String?
-
The cut of the item.
getter/setter pair
- source ↔ String?
-
The source of the offer, that is, how the offer was created.
getter/setter pair
- structuredDescription ↔ ProductStructuredDescription?
-
Structured description, for algorithmically (AI)-generated descriptions.
getter/setter pair
- structuredTitle ↔ ProductStructuredTitle?
-
Structured title, for algorithmically (AI)-generated titles.
getter/setter pair
- subscriptionCost ↔ ProductSubscriptionCost?
-
Number of periods (months or years) and amount of payment per period for
an item with an associated subscription contract.
getter/setter pair
-
sustainabilityIncentives
↔ List<
ProductSustainabilityIncentive> ? -
The list of sustainability incentive programs.
getter/setter pair
- targetCountry ↔ String?
-
The CLDR territory code for the item's country of sale.
getter/setter pair
- taxCategory ↔ String?
-
The tax category of the product, used to configure detailed tax nexus in
account-level tax settings.
getter/setter pair
-
taxes
↔ List<
ProductTax> ? -
Tax information.
getter/setter pair
- title ↔ String?
-
Title of the item.
getter/setter pair
- transitTimeLabel ↔ String?
-
The transit time label of the product, used to group product in
account-level transit time tables.
getter/setter pair
- unitPricingBaseMeasure ↔ ProductUnitPricingBaseMeasure?
-
The preference of the denominator of the unit price.
getter/setter pair
- unitPricingMeasure ↔ ProductUnitPricingMeasure?
-
The measure and dimension of an item.
getter/setter pair
- virtualModelLink ↔ String?
-
URL of the 3D model of the item to provide more visuals.
getter/setter pair
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toJson(
) → Map< String, dynamic> -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited