> Agent-readable docs index: /llms.txt. Download /docs.zip to grep all markdown files locally.

---
title: "ShopifyProduct"
description: "Represents products from the Shopify stores. It includes details such as the product's title, description, price, availability, images, and other attributes. These details help the API to handle products from Shopify in a way that's consistent with products from other sources, like Amazon, and to provide users with a seamless shopping experience across different platforms."
---

<Note>[`AmazonProduct`](/api-reference/amazonproduct) and [`ShopifyProduct`](/api-reference/shopifyproduct) have similarities and differences that are compared in detail [here](/amazon-and-shopify-product-comparison)</Note>

## Fields

<ParamField path="id" type="ID!" required>
  A unique Shopify Product ID, usually an integer.
</ParamField>

<ParamField path="marketplace" type={<a href="/api-reference/marketplace">Marketplace!</a>} required>
  The marketplace associated with the product, in this case, Shopify.
</ParamField>

<ParamField path="title" type="String!" required>
  The title of the product.
</ParamField>

<ParamField path="description" type="String!" required>
  The description of the product scraped and extracted from the HTML of the product page.
</ParamField>

<ParamField path="vendor" type="String!" required>
  The vendor of the product.
</ParamField>

<ParamField path="url" type={<a href="/api-reference/url">URL!</a>} required>
  The URL to the product page.
</ParamField>

<ParamField path="price" type={<a href="/api-reference/price">Price!</a>} required>
  The minimum variant price of the product in the form of a Price object.
</ParamField>

<ParamField path="isAvailable" type="Boolean!" required>
  A boolean flag to indicate whether any of the product variants are available.
</ParamField>

<ParamField path="tags" type="[String!]!" required>
  A list of additional tags associated with the product.
</ParamField>

<ParamField path="images" type={<a href="/api-reference/image">[Image!]!</a>} required>
  A list of images of the product, implementing the Image interface.
</ParamField>

<ParamField path="thumbnail" type={<a href="/api-reference/image">Image</a>}>
  The thumbnail image for the Amazon product, when available.

  <Expandable title="arguments">
    <ParamField path="size" type={<a href="/api-reference/productthumbnailsize">ProductThumbnailSize!</a>} required>
      The size of the thumbnail image to return.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField path="variants" type={<a href="/api-reference/variant">[Variant!]!</a>} required>
  A list of product variants available, usually different sizes or colors, implementing the Variant interface.
</ParamField>

<ParamField path="descriptionHTML" type="String!" required>
  The raw HTML of the product page description.
</ParamField>

<ParamField path="collectionHandle" type="String!" required>
  A handle for the product collection, used to group products together.
</ParamField>

<ParamField path="handle" type="String!" required>
  A unique handle for the product.
</ParamField>

<ParamField path="maxPriceV2" type={<a href="/api-reference/price">Price!</a>} required>
  The maximum price across the product variants.
</ParamField>

<ParamField path="minPriceV2" type={<a href="/api-reference/price">Price!</a>} required>
  The minimum price across the product variants.
</ParamField>

<ParamField path="maxPrice" type="Int!" required deprecated>
  The maximum price across the product variants.
</ParamField>

<ParamField path="minPrice" type="Int!" required deprecated>
  The minimum price across the product variants.
</ParamField>

<ParamField path="productType" type="String!" required>
  The type of the product.
</ParamField>

<ParamField path="createdAt" type={<a href="/api-reference/time">Time!</a>} required>
  The date and time when the product was created.
</ParamField>

<ParamField path="publishedAt" type={<a href="/api-reference/time">Time!</a>} required>
  The date and time when the product was published.
</ParamField>

<ParamField path="storeCanonicalURL" type={<a href="/api-reference/url">URL!</a>} required>
  The canonical URL of the store.
</ParamField>

<ParamField path="storeDomain" type="String!" required>
  The domain name part of the store canonical URL, e.g., abc.myshopify.com.
</ParamField>

<ParamField path="options" type={<a href="/api-reference/productoption">ProductOption!</a>} required>
  A list of extra customizations for a product.
</ParamField>

<ParamField path="shopifyCategories" type="[ShopifyCategory!]!" required>
  A list of categories to which the product belongs.
</ParamField>

***

`reviewsConnection( before: ID after: ID first: Int last: Int )`: [`ShopifyProductReviewsConnection`](/api-reference/shopifyproductreviewsconnection)

A connection to fetch product reviews. It accepts the arguments before, after, first, and last for pagination purposes and returns a [`ShopifyProductReviewsConnection`](/api-reference/shopifyproductreviewsconnection) object.

### Related types

* [`ShopifyCartLine`](/api-reference/shopifycartline)


---

*Powered by [holocron.so](https://holocron.so)*
