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

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
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
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
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
Additional URLs of lifestyle images of the item.
getter/setter pair
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
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
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