Product interface implementations

Magento provides multiple product types, and most of these product types have specialized attributes that are not defined in the ProductInterface.

Product type Implements Has product-specific attributes?
BundleProduct ProductInterface, PhysicalProductInterface, CustomizableProductInterface Yes
ConfigurableProduct ProductInterface, PhysicalProductInterface, CustomizableProductInterface Yes
DownloadableProduct ProductInterface, CustomizableProductInterface Yes
GroupedProduct ProductInterface, PhysicalProductInterface, CustomizableProductInterface Yes
SimpleProduct ProductInterface, PhysicalProductInterface, CustomizableProductInterface No
VirtualProduct ProductInterface, CustomizableProductInterface No

Query for product-specific attributes

To return attributes that are specific to a product type, append a structure similar to the following to the end of the Products output object:

1
2
3
4
5
6
7
... on <ProductType> {
  items{
    <ProductType-attribute1>
    <ProductType-attribute2>
    ...
    }
  }

For example, to return GroupedProduct attributes, construct your query like this:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
{
  products(filter:
    {sku: {eq: "24-WG085_Group"}}
  )
  {
    items {
      id
      name
      sku
      type_id
      ... on GroupedProduct {
        items{
          qty
          position
          product{
            sku
            name
            type_id
            url_key
          }
        }
      }
    }
  }
}