Skip to Content

Product

A product in the store, including details, variants, images, pricing, and reviews.

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 metafields: [Metafield]! metafield: Metafield }

Fields

FieldTypeDescription
handleStringReturns the handle.
seoDescriptionStringReturns description for search engines.
seoTitleStringReturns title for search engines.
seoKeywordsStringReturns keywords for search engines.
idIntReturns the id.
combinedListingCombinedListingReturns the combined listing.
firstAvailableVariantProductVariantReturns the first available variant.
hasOnlyDefaultVariantBooleanReturns 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.
defaultOrSelectedVariantProductVariantReturn 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.
inPreviewBooleanReturns true if product is in preview.
isAvailableBooleanReturns true if product is available for purchase.
isDirectlyBuyableBooleanReturns true if product can be bought without selecting any attributes.
titleStringReturns the title.
manufacturerManufacturerReturns the manufacturer.
shortDescriptionStringReturns the short description.
descriptionStringReturns the description.
images[Image]Returns the images.
videos[Video]Returns the videos.
featuredImageImageReturns product featured (first available) image.
featuredVideoVideoReturns the featured (first available) video.
compatible[Product]Returns the compatible products.
similar[Product]Returns the similar products.
related[Product]Returns the related products.
delivererDelivererReturns the deliverer.
productGroups[ProductGroup]Returns the associated product groups.
returnPolicyTimeLimitIntReturns the product return policy time limit in days.
ratingFloatReturns the rating.
reviewCountIntReturns the review count.
maxRatingIntReturns the maximum rating.
reviews[Review]Returns the reviews.
attachments[Attachment]Returns the product attachments as AttachmentDrop objects.
reviewsAreEnabledBooleanReturns true if reviews are enabled for this product.
reviewsRequireAccountBooleanReturns true if creating a review for this product requires an account.
reviewsRequirePurchaseBooleanReturns true if product must be purchased before review can be made.
reviewsRequireApprovalBooleanReturns true if reviews are approved before published.
taxonomyProductTaxonomyReturns the taxonomy.
createdAtStringReturns the creation date.
updatedAtStringReturns the last updated date.
rateStringReturns the tax rate.
inCustomersWishlistStringReturns true if product is in customer’s wishlist.
customerHasReviewedStringReturns true if customer has reviewed the product.
customerCanReviewStringReturns true if customer can review the product.
customerHasPurchasedStringReturns true if customer has purchased the product.
metafields[Metafield]!Metafields stored on this resource.
metafieldMetafieldA single metafield by namespace and key.

Relationships

The Product type represents a store product and maintains relationships with multiple other types in the schema. It references variants through the variants field and firstAvailableVariant field, which return ProductVariant objects. Product images and videos are accessible through the images, videos, featuredImage, and featuredVideo fields, which return Image and Video objects respectively.

Products can be grouped through the productGroups field, returning ProductGroup objects. Product reviews are available through the reviews field, returning Review objects. Related products are accessible through compatible, similar, and related fields which return other Product objects. Additional relationships include manufacturer (Manufacturer), deliverer (Deliverer), and taxonomy (ProductTaxonomy). Product options are returned through optionsWithValues and optionsByHandle fields as ProductOption objects, and custom fields are accessible through the customFields field as CustomField objects.

Example

{ product(id: 12345) { id handle title seoTitle seoDescription description shortDescription rating reviewCount isAvailable isDirectlyBuyable featuredImage { src alt } variants { id title price } optionsWithValues { name values } manufacturer { name } reviews { title rating content } taxonomy { categoryHandle } } }

Implements

This type does not implement any interfaces.