Product
Describes a product with comprehensive details including variants, images, reviews, and related product information.
Type Definition
type Product {
handle: String
seoDescription: String
seoTitle: String
seoKeywords: String
id: Int
combinedListing: CombinedListing
firstAvailableVariant: ProductVariant
hasOnlyDefaultVariant: Boolean
variants: [ProductVariant]
options: [String]
optionsWithValues: [ProductOption]
optionsByHandle: [ProductOption]
defaultOrSelectedVariant: ProductVariant
tags: [String]
customFields: [CustomField]
inPreview: Boolean
isAvailable: Boolean
isDirectlyBuyable: Boolean
title: String
manufacturer: Manufacturer
shortDescription: String
description: String
images: [Image]
videos: [Video]
featuredImage: Image
featuredVideo: Video
compatible: [Product]
similar: [Product]
related: [Product]
deliverer: Deliverer
productGroups: [ProductGroup]
returnPolicyTimeLimit: Int
rating: Float
reviewCount: Int
maxRating: Int
reviews: [Review]
attachments: [Attachment]
reviewsAreEnabled: Boolean
reviewsRequireAccount: Boolean
reviewsRequirePurchase: Boolean
reviewsRequireApproval: Boolean
taxonomy: ProductTaxonomy
createdAt: String
updatedAt: String
rate: String
inCustomersWishlist: String
customerHasReviewed: String
customerCanReview: String
customerHasPurchased: String
}Fields
| Field | Type | Description |
|---|---|---|
| handle | String | Returns the handle. |
| seoDescription | String | Returns description for search engines. |
| seoTitle | String | Returns title for search engines. |
| seoKeywords | String | Returns keywords for search engines. |
| id | Int | Returns the id. |
| combinedListing | CombinedListing | Returns the combined listing. |
| firstAvailableVariant | ProductVariant | Returns the first available variant. |
| hasOnlyDefaultVariant | Boolean | Returns true if product has only default variant. |
| variants | [ProductVariant] | Returns the variants. |
| options | [String] | Returns the options handles. |
| optionsWithValues | [ProductOption] | Returns array of options. |
| optionsByHandle | [ProductOption] | Returns array of options indexed by handle. |
| defaultOrSelectedVariant | ProductVariant | Return the selected variant or the default one if none is selected. |
| tags | [String] | Returns product tags. |
| customFields | [CustomField] | Returns product custom fields as CustomFieldDrop objects. |
| inPreview | Boolean | Returns true if product is in preview. |
| isAvailable | Boolean | Returns true if product is available for purchase. |
| isDirectlyBuyable | Boolean | Returns true if product can be bought without selecting any attributes. |
| title | String | Returns the title. |
| manufacturer | Manufacturer | Returns the manufacturer. |
| shortDescription | String | Returns the short description. |
| description | String | Returns the description. |
| images | [Image] | Returns the images. |
| videos | [Video] | Returns the videos. |
| featuredImage | Image | Returns product featured (first available) image. |
| featuredVideo | Video | Returns the featured (first available) video. |
| compatible | [Product] | Returns the compatible products. |
| similar | [Product] | Returns the similar products. |
| related | [Product] | Returns the related products. |
| deliverer | Deliverer | Returns the deliverer. |
| productGroups | [ProductGroup] | Returns the associated product groups. |
| returnPolicyTimeLimit | Int | Returns the product return policy time limit in days. |
| rating | Float | Returns the rating. |
| reviewCount | Int | Returns the review count. |
| maxRating | Int | Returns the maximum rating. |
| reviews | [Review] | Returns the reviews. |
| attachments | [Attachment] | Returns the product attachments as AttachmentDrop objects. |
| reviewsAreEnabled | Boolean | Returns true if reviews are enabled for this product. |
| reviewsRequireAccount | Boolean | Returns true if creating a review for this product requires an account. |
| reviewsRequirePurchase | Boolean | Returns true if product must be purchased before review can be made. |
| reviewsRequireApproval | Boolean | Returns true if reviews are approved before published. |
| taxonomy | ProductTaxonomy | Returns the taxonomy. |
| createdAt | String | Returns the creation date. |
| updatedAt | String | Returns the last updated date. |
| rate | String | Returns the tax rate. |
| inCustomersWishlist | String | Returns true if product is in customers wishlist. |
| customerHasReviewed | String | Returns true if customer has reviewed the product. |
| customerCanReview | String | Returns true if customer can review the product. |
| customerHasPurchased | String | Returns true if customer has purchased the product. |
Relationships
The Product type represents a core entity in the storefront catalog. It maintains relationships with:
- Variants: Products contain multiple
ProductVariantobjects that represent different configurations or SKUs - Images and Videos: Rich media content is associated through
ImageandVideotypes - Related Products: Links to compatible, similar, and related products for product discovery
- Reviews: Customer feedback through
Reviewobjects with configurable approval workflows - Taxonomy: Product categorization through
ProductTaxonomy - Manufacturer: Product source information
- Deliverer: Shipping and fulfillment details
- ProductGroups: Product grouping and organization
- CustomFields and Attachments: Extended product metadata
Example
{
product(id: 12345) {
id
title
handle
description
shortDescription
isAvailable
isDirectlyBuyable
rating
reviewCount
featuredImage {
url
}
variants {
id
title
}
optionsWithValues {
handle
name
}
manufacturer {
name
}
reviews {
id
title
rating
}
taxonomy {
category
}
}
}Implements
This type does not implement any interfaces.