---
schema_version: "1"
id: 02519b3a945195f5ce3d17e93f473e4aa23f2c7635088e139d2564da6e7c4da0
title: ConnectApi.ProductDetail
collection: legacydeveloper
version: current
locale: en-us
portal_url: https://docs.salesforce.com/legacydeveloper/current/en-us/apexref/apex_connectapi_output_product_detail.md
canonical_url: https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_connectapi_output_product_detail.htm
source_site: developer.salesforce.com
content_type: documentation
content_hash: a2083f246c9ad3c527fd33a86c226cebabb64f6c4583fb73e984b9a2c1744e0a
description: Details of a product.
---
# ConnectApi.ProductDetail

Details of a product.

<table class="featureTable sort_table" summary="">




          <thead class="thead sorted" align="left">
            <tr>
              <th class="featureTableHeader vertical-align-top " id="d1159424e47">Property Name</th>

              <th class="featureTableHeader vertical-align-top " id="d1159424e50">Type</th>

              <th class="featureTableHeader vertical-align-top " id="d1159424e53">Description</th>

              <th class="featureTableHeader vertical-align-top " id="d1159424e56">Available Version</th>

            </tr>

          </thead>

          <tbody class="tbody">
            <tr>
              <td class="entry" headers="d1159424e47" data-title="Property Name"><samp class="codeph apex_code">attributeSetInfo</samp></td>

              <td class="entry" headers="d1159424e50" data-title="Type">
                <a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_methods_system_map.htm#apex_methods_system_map" title="Contains methods for the Map collection type.">Map</a>&lt;String, <a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_connectapi_output_product_attribute_set_info.htm" title="Attribute set metadata."><samp class="codeph apex_code">ConnectApi.​ProductAttribute​SetInfo</samp></a>&gt;
              </td>

              <td class="entry" headers="d1159424e53" data-title="Description"><span class="ph" id="attributeSetInfo"><a name="attributeSetInfo"><!-- --></a>Map of the attribute set developer name to its
                  metadata.</span></td>

              <td class="entry" headers="d1159424e56" data-title="Available Version">50.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d1159424e47" data-title="Property Name"><samp class="codeph apex_code">defaultImage</samp></td>

              <td class="entry" headers="d1159424e50" data-title="Type"><a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_connectapi_output_product_media.htm" title="Media associated with a product."><samp class="codeph apex_code">ConnectApi.​ProductMedia</samp></a></td>

              <td class="entry" headers="d1159424e53" data-title="Description"><span class="ph" id="defaultImage"><a name="defaultImage"><!-- --></a>Default image of the product.</span></td>

              <td class="entry" headers="d1159424e56" data-title="Available Version">49.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d1159424e47" data-title="Property Name"><samp class="codeph apex_code">entitlement</samp></td>

              <td class="entry" headers="d1159424e50" data-title="Type"><a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_connectapi_output_product_entitlement.htm" title="Entitlements for a product."><samp class="codeph apex_code">ConnectApi.​ProductEntitlement</samp></a></td>

              <td class="entry" headers="d1159424e53" data-title="Description">
                <span class="ph" id="entitlement"><a name="entitlement"><!-- --></a>Entitlement details for the product.</span>
                <p class="p">To get pricing
                  information for products in version 57 and later, use the <a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_ConnectAPI_CommerceStorePricing_static_methods.htm#apex_ConnectAPI_CommerceStorePricing_static_methods" title="Get product prices.">CommerceStorePricing Class</a>.</p>
              </td>

              <td class="entry" headers="d1159424e56" data-title="Available Version">49.0–56.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d1159424e47" data-title="Property Name"><samp class="codeph apex_code">fields</samp></td>

              <td class="entry" headers="d1159424e50" data-title="Type">
                <a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_methods_system_map.htm#apex_methods_system_map" title="Contains methods for the Map collection type.">Map</a>&lt;String, String&gt;
              </td>

              <td class="entry" headers="d1159424e53" data-title="Description"><span class="ph" id="fields"><a name="fields"><!-- --></a>List of fields for the product.</span></td>

              <td class="entry" headers="d1159424e56" data-title="Available Version">49.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d1159424e47" data-title="Property Name"><samp class="codeph apex_code">id</samp></td>

              <td class="entry" headers="d1159424e50" data-title="Type">String</td>

              <td class="entry" headers="d1159424e53" data-title="Description"><span class="ph" id="id"><a name="id"><!-- --></a>ID of the product.</span></td>

              <td class="entry" headers="d1159424e56" data-title="Available Version">49.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d1159424e47" data-title="Property Name"><samp class="codeph apex_code">mediaGroups</samp></td>

              <td class="entry" headers="d1159424e50" data-title="Type">
                <a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_methods_system_list.htm#apex_methods_system_list" title="Contains methods for the List collection type.">List</a>&lt;<a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_connectapi_output_product_media_group.htm" title="Media group associated with a product."><samp class="codeph apex_code">ConnectApi.​ProductMediaGroup</samp></a>&gt;
              </td>

              <td class="entry" headers="d1159424e53" data-title="Description"><span class="ph" id="mediaGroups"><a name="mediaGroups"><!-- --></a>List of media groups of the product.</span></td>

              <td class="entry" headers="d1159424e56" data-title="Available Version">49.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d1159424e47" data-title="Property Name"><samp class="codeph apex_code">primaryProduct​CategoryPath</samp></td>

              <td class="entry" headers="d1159424e50" data-title="Type"><a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_connectapi_output_product_category_path.htm" title="List of product categories in a path."><samp class="codeph apex_code">ConnectApi.​ProductCategoryPath</samp></a></td>

              <td class="entry" headers="d1159424e53" data-title="Description"><span class="ph" id="primaryProductCategoryPath"><a name="primaryProductCategoryPath"><!-- --></a>Primary category path of the
                  product.</span></td>

              <td class="entry" headers="d1159424e56" data-title="Available Version">49.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d1159424e47" data-title="Property Name"><samp class="codeph apex_code">productClass</samp></td>

              <td class="entry" headers="d1159424e50" data-title="Type"><a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/connectAPI_enums.htm#productClassEnum"><samp class="codeph apex_code">ConnectApi.​ProductClass</samp></a></td>

              <td class="entry" headers="d1159424e53" data-title="Description">Class of product.
                Values are:<ul class="ul bulletList">
                  <li class="li"><samp class="codeph apex_code">Bundle</samp></li>
                  <li class="li"><samp class="codeph apex_code">Set</samp></li>
                  <li class="li"><samp class="codeph apex_code">Simple</samp></li>
                  <li class="li"><samp class="codeph apex_code">Variation</samp></li>
                  <li class="li"><samp class="codeph apex_code">VariationParent</samp></li>
                </ul>
              </td>

              <td class="entry" headers="d1159424e56" data-title="Available Version">50.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d1159424e47" data-title="Property Name"><samp class="codeph apex_code">productSelling​Models</samp></td>

              <td class="entry" headers="d1159424e50" data-title="Type">
                <a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_methods_system_list.htm#apex_methods_system_list" title="Contains methods for the List collection type.">List</a>&lt;<a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_connectapi_output_product_selling_model.htm" title="Product selling model for Commerce subscriptions."><samp class="codeph apex_code">ConnectApi.​ProductSelling​Model</samp></a>&gt;
              </td>

              <td class="entry" headers="d1159424e53" data-title="Description"><span class="ph" id="productSellingModels"><a name="productSellingModels"><!-- --></a>List of product selling models for the
                  product.</span></td>

              <td class="entry" headers="d1159424e56" data-title="Available Version">56.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d1159424e47" data-title="Property Name"><samp class="codeph apex_code">purchaseQuantity​Rule</samp></td>

              <td class="entry" headers="d1159424e50" data-title="Type"><a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_connectapi_output_purchase_quantity_rule.htm" title="Rule that restricts the quantity of a product that can be purchased."><samp class="codeph apex_code">ConnectApi.​PurchaseQuantity​Rule</samp></a></td>

              <td class="entry" headers="d1159424e53" data-title="Description"><span class="ph" id="purchaseQuantityRule"><a name="purchaseQuantityRule"><!-- --></a>If one exists, purchase quantity rule for the
                  product.</span></td>

              <td class="entry" headers="d1159424e56" data-title="Available Version">52.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d1159424e47" data-title="Property Name"><samp class="codeph apex_code">urlName</samp></td>

              <td class="entry" headers="d1159424e50" data-title="Type">String</td>

              <td class="entry" headers="d1159424e53" data-title="Description"><span class="ph" id="urlSlug"><a name="urlSlug"><!-- --></a>SEO-friendly URL name for the product.</span></td>

              <td class="entry" headers="d1159424e56" data-title="Available Version">59.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d1159424e47" data-title="Property Name"><samp class="codeph apex_code">variationAttribute​Set</samp></td>

              <td class="entry" headers="d1159424e50" data-title="Type"><a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_connectapi_output_product_attribute_set.htm" title="Product attribute set data."><samp class="codeph apex_code">ConnectApi.​ProductAttributeSet</samp></a></td>

              <td class="entry" headers="d1159424e53" data-title="Description"><span class="ph" id="variationAttributeSet"><a name="variationAttributeSet"><!-- --></a>Variation attribute set for the
                  product.</span></td>

              <td class="entry" headers="d1159424e56" data-title="Available Version">50.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d1159424e47" data-title="Property Name"><samp class="codeph apex_code">variationInfo</samp></td>

              <td class="entry" headers="d1159424e50" data-title="Type"><a class="xref" href="https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_connectapi_output_product_variation_info.htm" title="Product variation attributes, metadata, and mappings of attribute combinations to variation product IDs."><samp class="codeph apex_code">ConnectApi.​ProductVariationInfo</samp></a></td>

              <td class="entry" headers="d1159424e53" data-title="Description"><span class="ph" id="variationInfo"><a name="variationInfo"><!-- --></a>Available and allowable values for variation attributes
                  and a map to resolve variation product IDs from attribute value
                  combinations.</span></td>

              <td class="entry" headers="d1159424e56" data-title="Available Version">50.0</td>

            </tr>

            <tr>
              <td class="entry" headers="d1159424e47" data-title="Property Name"><samp class="codeph apex_code">variationParentId</samp></td>

              <td class="entry" headers="d1159424e50" data-title="Type">String</td>

              <td class="entry" headers="d1159424e53" data-title="Description"><span class="ph" id="variationParentId"><a name="variationParentId"><!-- --></a>ID of the variation parent.</span></td>

              <td class="entry" headers="d1159424e56" data-title="Available Version">50.0</td>

            </tr>

          </tbody>

        </table>