Product

A product represents an individual item for sale in a Shopify store. Products are often physical, but they don't have to be. For example, a digital download (such as a movie, music or ebook file) also qualifies as a product, as do services (such as equipment rental, work for hire, customization of another product or an extended warranty).

Show definition
# A product represents an individual item for sale in a Shopify store. Products
# are often physical, but they don't have to be. 
# For example, a digital download (such as a movie, music or ebook file) also
# qualifies as a product, as do services (such as equipment rental, work for hire,
# customization of another product or an extended warranty).
type Product implements Node {
  id: ID!

  # List of collections a product belongs to.
  collections(first: Int!, after: String, reverse: Boolean = false): CollectionConnection!

  # The date and time when the product was created.
  createdAt: DateTime!

  # Stripped description of the product, single line with HTML tags removed.
  description(
    # Truncates string after the given length.
    truncateAt: Int
  ): String!

  # The description of the product, complete with HTML formatting.
  descriptionHtml: HTML!

  # Stripped description of the product, single line with HTML tags removed.
  # Truncated to 60 characters.
  descriptionPlainSummary: String!

  # A human-friendly unique string for the Product automatically generated from its title.
  # They are used by the Liquid templating language to refer to objects.
  handle: String!

  # List of images associated with the product.
  images(
    first: Int!
    after: String
    reverse: Boolean = false

    # Image width in pixels between 1 and 2048
    maxWidth: Int

    # Image height in pixels between 1 and 2048
    maxHeight: Int

    # If specified, crop the image keeping the specified region
    crop: CropRegion

    # Image size multiplier retina displays. Must be between 1 and 3
    scale: Int = 1
  ): ImageConnection!

  # Lst of custom product options (maximum of 3 per product).
  options(
    # Truncate the array result to this size
    first: Int
  ): [ProductOption!]!

  # A categorization that a product can be tagged with, commonly used for filtering and searching.
  productType: String!

  # The date and time when the product was published to the Online Store channel.
  # A value of `null` indicates that the product is not published to Online Store.
  publishedAt: DateTime!

  # A categorization that a product can be tagged with, commonly used for filtering and searching.
  # Each comma-separated tag has a character limit of 255.
  tags: [String!]!

  # The product’s title.
  title: String!

  # The date and time when the product was last modified.
  updatedAt: DateTime!

  # List of the product’s variants.
  variants(first: Int!, after: String, reverse: Boolean = false): ProductVariantConnection!

  # The product’s vendor name.
  vendor: String!
}

Implements

Connections

collections   (CollectionConnection!)

List of collections a product belongs to.

Argument Type Default Description
after String
first required Int
reverse Boolean false

images   (ImageConnection!)

List of images associated with the product.

Argument Type Default Description
after String
crop CropRegion

If specified, crop the image keeping the specified region

first required Int
maxHeight Int

Image height in pixels between 1 and 2048

maxWidth Int

Image width in pixels between 1 and 2048

reverse Boolean false
scale Int 1

Image size multiplier retina displays. Must be between 1 and 3

variants   (ProductVariantConnection!)

List of the product’s variants.

Argument Type Default Description
after String
first required Int
reverse Boolean false

Fields

createdAt   (DateTime!)

The date and time when the product was created.

description   (String!)

Stripped description of the product, single line with HTML tags removed.

Argument Type Default Description
truncateAt Int

Truncates string after the given length.

descriptionHtml   (HTML!)

The description of the product, complete with HTML formatting.

descriptionPlainSummary   (String!) deprecated

Stripped description of the product, single line with HTML tags removed. Truncated to 60 characters.

Use description instead

handle   (String!)

A human-friendly unique string for the Product automatically generated from its title. They are used by the Liquid templating language to refer to objects.

id   (ID!)

options   ([ProductOption!]!)

Lst of custom product options (maximum of 3 per product).

Argument Type Default Description
first Int

Truncate the array result to this size

productType   (String!)

A categorization that a product can be tagged with, commonly used for filtering and searching.

publishedAt   (DateTime!)

The date and time when the product was published to the Online Store channel. A value of null indicates that the product is not published to Online Store.

tags   ([String!]!)

A categorization that a product can be tagged with, commonly used for filtering and searching. Each comma-separated tag has a character limit of 255.

title   (String!)

The product’s title.

updatedAt   (DateTime!)

The date and time when the product was last modified.

vendor   (String!)

The product’s vendor name.