diff --git a/guides/v2.3/graphql/reference/products.md b/guides/v2.3/graphql/reference/products.md index aee2b7abd69..5546045f272 100644 --- a/guides/v2.3/graphql/reference/products.md +++ b/guides/v2.3/graphql/reference/products.md @@ -26,6 +26,7 @@ Attribute | Description `currentPage` | Specifies which page of results to return. The default value is 1. See [Searches and pagination in GraphQL]({{ page.baseurl }}/graphql/search-pagination.html) for more information. `sort` | Specifies which attribute to sort on, and whether to return the results in ascending or descending order. See [Searches and pagination in GraphQL]({{ page.baseurl }}/graphql/search-pagination.html) for more information. `Products` | An output object that contains the results of the query. See [Response](#Response) for details. +{:style="table-layout:auto;"} ## ProductFilterInput object {#ProductFilterInput} @@ -85,13 +86,25 @@ updated_at weight ``` -
The following attributes are not used in responses: + * `or` - The keyword required to perform a logical OR comparison. * `news_from_date` - This attribute is transformed to `news_from_date` in a response. * `news_to_date` - This attribute is transformed to `news_to_date` in a response. -* -
+ +{% +include note.html +type="info" +content="GraphQL automatically filters out a product attribute if ALL of the following fields are set to **No** on the attribute's Storefront Properties page in Admin: + +* Comparable on Storefront +* Use in Layered Navigation +* Use in Search Results Layered Navigation +* Visible on Catalog Pages on Storefront +* Used in Product Listing +* Used for Sorting in Product Listing" + +%} ## Response {#Response} @@ -114,7 +127,7 @@ Attribute | Description `total_count` | The number of products returned `filters` | An array of layered navigation filters. These filters can be used to implement layered navigation on your app. `sort_fields` | An object that includes the default sort field and all available sort fields - +{:style="table-layout:auto;"} When a product requires a filter attribute that is not a field on its output schema, inject the attribute name into the class in a module's `di.xml` file. @@ -191,6 +204,7 @@ Attribute | Data type | Description `type_id` | String | One of `simple`, `virtual`, `bundle`, `downloadable`,`grouped`, `configurable` `updated_at` | String | The timestamp indicating when the product was last updated `website_ids` | [Int] | An array of website IDs in which the product is available +{:style="table-layout:auto;"} ### ProductPrices object {#ProductPrices} @@ -201,6 +215,7 @@ Attribute | Data Type | Description `maximalPrice` | Price | Used for composite (bundle, configurable, grouped) products. This is the highest possible final price for all the options defined within a composite product. If you're specifying a price range, this would be the "to" value. `minimalPrice` | Price | Used for composite (bundle, configurable, grouped) products. This is the lowest possible final price for all the options defined within a composite product. If you're specifying a price range, this would be the "from" value. `regularPrice` | Price | The base price of a product. +{:style="table-layout:auto;"} #### Price object {#Price} @@ -210,6 +225,7 @@ Attribute | Data Type | Description --- | --- | --- `amount` | Money | The price of the product and its currency code. See [Money object](#Money). `adjustments` | [PriceAdjustment] | An array of [PriceAdjustment](#PriceAdjustment) objects. +{:style="table-layout:auto;"} ##### Money object {#Money} @@ -219,6 +235,7 @@ Attribute | Data Type | Description --- | --- | --- `value` | Float | The price of the product `currency` | CurrencyEnum | A three-letter currency code, such as `USD` or `EUR`. +{:style="table-layout:auto;"} ##### PriceAdjustment array {#PriceAdjustment} @@ -229,6 +246,7 @@ Attribute | Data Type | Description `amount` | Money | The amount of the price adjustment and its currency code. See [Money object](#Money). `code` | PriceAdjustmentCodesEnum | One of `tax`, `weee`, or `weee_tax`. `description` | PriceAdjustmentDescriptionEnum | Indicates whether the entity described by the code attribute is included or excluded from the adjustment. +{:style="table-layout:auto;"} #### ProductLinks object {#ProductLinks} @@ -241,6 +259,7 @@ Attribute | Type | Description `linked_product_sku` | String | The SKU of the linked product `linked_product_type` | String | The type of linked product (`simple`, `virtual`, `bundle`, `downloadable`,`grouped`, `configurable`) `position` | Int | The position within the list of product links +{:style="table-layout:auto;"} ### MediaGalleryEntry object {#MediaGalleryEntry} @@ -257,6 +276,7 @@ Field | Type | Description `file` | String | The path of the image on the server `content` | ProductMediaGalleryEntriesContent | Contains a [ProductMediaGalleryEntriesContent](#ProductMediaGalleryEntriesContent) object `video_content` | ProductMediaGalleryEntriesVideoContent | Contains a [ProductMediaGalleryEntriesVideoContent](#ProductMediaGalleryEntriesVideoContent) object +{:style="table-layout:auto;"} #### ProductMediaGalleryEntriesContent object {#ProductMediaGalleryEntriesContent} @@ -267,6 +287,7 @@ Field | Type | Description `base64_encoded_data` | String | The image in base64 format `type` | String | The MIME type of the file, such as `image/png` `name` | String | The file name of the image +{:style="table-layout:auto;"} #### ProductMediaGalleryEntriesVideoContent object {#ProductMediaGalleryEntriesVideoContent} @@ -280,6 +301,7 @@ Field | Type | Description `video_title` | String | Required. The title of the video `video_description` | String | A description of the video `video_metadata` | String | Optional data about the video +{:style="table-layout:auto;"} ### ProductTierPrices object {#ProductTier} @@ -292,6 +314,7 @@ Field | Type | Description `value` | Float | The price of the fixed price item `percentage_value` | Float | The percentage discount of the item `website_id` | Int | The ID assigned to the website +{:style="table-layout:auto;"} ## PhysicalProductInterface {#PhysicalProductInterface} @@ -300,6 +323,7 @@ Field | Type | Description Field | Type | Description --- | --- | --- `weight` | Float | The weight of the item, in units defined by the store +{:style="table-layout:auto;"} ## LayerFilter object @@ -311,6 +335,7 @@ Field | Type | Description `request_var` | String | The request variable name for the filter query `filter_items_count` | Int | The number of filter items in filter group `filter_items` | [LayerFilterItemInterface] | An array of filter items +{:style="table-layout:auto;"} ### LayerFilterItemInterface @@ -321,6 +346,7 @@ Field | Type | Description `label` | String | The label applied to a filter `value_string` | String | The value for filter request variable to be used in a query `items_count` | Int | The number of items the filter returned +{:style="table-layout:auto;"} ## SortFields object @@ -330,6 +356,7 @@ Field | Type | Description --- | --- | --- `default` | String | The default sort field `options` | `SortField` | An array that contains all the fields you can use for sorting +{:style="table-layout:auto;"} ### SortField object @@ -337,6 +364,7 @@ Field | Type | Description --- | --- | --- `value` | String | The attribute name or code to use as the sort field `label` | String | The attribute's label +{:style="table-layout:auto;"} ## Sample query