> Documentation index: [Saleor](/llms.txt) · [This section](/api-reference/products/llms.txt)
> Source: https://docs.saleor.io/api-reference/products/inputs/product-where-input

# ProductWhereInput Input Type

No description

```graphql
input ProductWhereInput {
  metadata: [MetadataFilter!]
  ids: [ID!]
  name: StringFilterInput
  slug: StringFilterInput
  productType: GlobalIDFilterInput
  category: GlobalIDFilterInput
  collection: GlobalIDFilterInput
  isAvailable: Boolean
  isPublished: Boolean
  isVisibleInListing: Boolean
  publishedFrom: DateTime
  availableFrom: DateTime
  hasCategory: Boolean
  price: DecimalFilterInput
  minimalPrice: DecimalFilterInput
  attributes: [AttributeInput!]
  stockAvailability: StockAvailability
  stocks: ProductStockFilterInput
  giftCard: Boolean
  hasPreorderedVariants: Boolean @deprecated
  updatedAt: DateTimeFilterInput
  AND: [ProductWhereInput!]
  OR: [ProductWhereInput!]
}
```

<a id="fields"></a>

### Fields

<a id="metadata"></a>

#### [`metadata`](#metadata) ● [`[MetadataFilter!]`](/api-reference/miscellaneous/inputs/metadata-filter.md)

<a id="ids"></a>

#### [`ids`](#ids) ● [`[ID!]`](/api-reference/miscellaneous/scalars/id.md)

<a id="name"></a>

#### [`name`](#name) ● [`StringFilterInput`](/api-reference/miscellaneous/inputs/string-filter-input.md)

Filter by product name.

<a id="slug"></a>

#### [`slug`](#slug) ● [`StringFilterInput`](/api-reference/miscellaneous/inputs/string-filter-input.md)

Filter by product slug.

<a id="product-type"></a>

#### [`productType`](#product-type) ● [`GlobalIDFilterInput`](/api-reference/miscellaneous/inputs/global-idfilter-input.md)

Filter by product type.

<a id="category"></a>

#### [`category`](#category) ● [`GlobalIDFilterInput`](/api-reference/miscellaneous/inputs/global-idfilter-input.md)

Filter by product category.

<a id="collection"></a>

#### [`collection`](#collection) ● [`GlobalIDFilterInput`](/api-reference/miscellaneous/inputs/global-idfilter-input.md)

Filter by collection.

<a id="is-available"></a>

#### [`isAvailable`](#is-available) ● [`Boolean`](/api-reference/miscellaneous/scalars/boolean.md)

Filter by availability for purchase.

<a id="is-published"></a>

#### [`isPublished`](#is-published) ● [`Boolean`](/api-reference/miscellaneous/scalars/boolean.md)

Filter by public visibility.

<a id="is-visible-in-listing"></a>

#### [`isVisibleInListing`](#is-visible-in-listing) ● [`Boolean`](/api-reference/miscellaneous/scalars/boolean.md)

Filter by visibility on the channel.

<a id="published-from"></a>

#### [`publishedFrom`](#published-from) ● [`DateTime`](/api-reference/miscellaneous/scalars/date-time.md)

Filter by the publication date.

<a id="available-from"></a>

#### [`availableFrom`](#available-from) ● [`DateTime`](/api-reference/miscellaneous/scalars/date-time.md)

Filter by the date of availability for purchase.

<a id="has-category"></a>

#### [`hasCategory`](#has-category) ● [`Boolean`](/api-reference/miscellaneous/scalars/boolean.md)

Filter by product with category assigned.

<a id="price"></a>

#### [`price`](#price) ● [`DecimalFilterInput`](/api-reference/miscellaneous/inputs/decimal-filter-input.md)

Filter by product variant price.

<a id="minimal-price"></a>

#### [`minimalPrice`](#minimal-price) ● [`DecimalFilterInput`](/api-reference/miscellaneous/inputs/decimal-filter-input.md)

Filter by the lowest variant price after discounts.

<a id="attributes"></a>

#### [`attributes`](#attributes) ● [`[AttributeInput!]`](/api-reference/attributes/inputs/attribute-input.md)

Filter by attributes associated with the product.

<a id="stock-availability"></a>

#### [`stockAvailability`](#stock-availability) ● [`StockAvailability`](/api-reference/products/enums/stock-availability.md)

Filter by variants having specific stock status.

<a id="stocks"></a>

#### [`stocks`](#stocks) ● [`ProductStockFilterInput`](/api-reference/products/inputs/product-stock-filter-input.md)

Filter by stock of the product variant.

<a id="gift-card"></a>

#### [`giftCard`](#gift-card) ● [`Boolean`](/api-reference/miscellaneous/scalars/boolean.md)

Filter on whether product is a gift card or not.

<a id="updated-at"></a>

#### [`updatedAt`](#updated-at) ● [`DateTimeFilterInput`](/api-reference/miscellaneous/inputs/date-time-filter-input.md)

Filter by when was the most recent update.

<a id="and"></a>

#### [`AND`](#and) ● [`[ProductWhereInput!]`](/api-reference/products/inputs/product-where-input.md)

List of conditions that must be met.

<a id="or"></a>

#### [`OR`](#or) ● [`[ProductWhereInput!]`](/api-reference/products/inputs/product-where-input.md)

A list of conditions of which at least one must be met.

Show deprecatedHide deprecated

<a id="has-preordered-variants"></a>

#### [`hasPreorderedVariants`](#has-preordered-variants) ● [`Boolean`](/api-reference/miscellaneous/scalars/boolean.md)

DEPRECATED

Preorder is deprecated and will be removed. Model pre-sales with regular stock instead: create the planned quantity in a warehouse, or set `trackInventory` to false to sell without a stock limit.

Filter by product with preordered variants.

<a id="member-of"></a>

### Member Of

[`CataloguePredicateInput`](/api-reference/discounts/inputs/catalogue-predicate-input.md) input  ● [`products`](/api-reference/products/queries/products.md) query  ● [`ProductWhereInput`](/api-reference/products/inputs/product-where-input.md) input
