If any supported optional fields are provided, we will treat them as a full
override when looking up product information from the catalog. Thus, it is
important to ensure that the overriding fields are accurate and
complete.
All other product fields are ignored and instead populated via catalog
lookup after event ingestion.
Quantity of the product associated with the user event.
For example, this field will be 2 if two products are added to the shopping
cart for purchase-complete event. Required for add-to-cart and
purchase-complete event types.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-04-09 UTC."],[[["The latest version available for `ProductDetail` in the Google.Cloud.Retail.V2 namespace is version 2.12.0, with a range of prior versions down to 1.0.0 also being accessible."],["`ProductDetail` is a sealed class used to represent detailed product information associated with user events, implementing interfaces like `IMessage`, `IEquatable`, `IDeepCloneable`, and `IBufferMessage`."],["This class has two constructors, one default and one that takes another `ProductDetail` object, allowing for object duplication."],["The `Product` property within `ProductDetail` is required and holds information about a product, while the `Quantity` property indicates the quantity of the product in a user event and is required for specific events."],["`ProductDetail` inherits members from the base Object class, including GetHashCode, GetType, MemberwiseClone, and ToString."]]],[]]