3/12/2026, 12:01:02 AM
The GraphQL API now allows querying collections, products, and variants with
an extended published_status syntax. In the query argument you can
specify a channel by ID or by its handle (e.g. 12345-published ormyโchannelโpublished) which controls visibility on that channel.
The deprecated publishable_status remains but is slated for removal. A
new enum, PixelDataSharingState, is introduced to indicate event
access for Shopify Pixel integrations.
All other query arguments and pagination remain unchanged; the count
queries such as productsCount and collectionsCount now inherit the
same extended filtering description.
Retrieves a list of collections
in a store. Collections are groups of products
that merchants can organize for display in their online store and
other sales channels.
For example, an athletics store might create different collections for running attire, shoes, and accessories.
Use the collections query when you need to:
The collections query supports pagination
for large catalogs and saved searches
for frequently used collection queries.
The collections query returns collections with their associated metadata, including:
Learn more about using metafields with smart collections.
Count of collections. Limited to a maximum of 10000 by default.
Retrieves a list of product variants
associated with a product.
A product variant is a specific version of a product that comes in more than
one option,
such as size or color. For example, if a merchant sells t-shirts with options for size and color,
then a small, blue t-shirt would be one product variant and a large, blue t-shirt would be another.
Use the productVariants query when you need to:
The productVariants query supports pagination
to handle large product catalogs and saved searches
for frequently used product variant queries.
The productVariants query returns product variants with their associated metadata, including:
Learn more about working with Shopify's product model.
Retrieves a list of products
in a store. Products are the items that merchants can sell in their store.
Use the products query when you need to:
The products query supports pagination
to handle large product catalogs and saved searches
for frequently used product queries.
The products query returns products with their associated metadata, including:
Learn more about working with Shopify's product model.
Count of products. Limited to a maximum of 10000 by default.
Indicates whether the pixel can access events. The state may reflect event restrictions or modifications.
productsCountproductsCount on ChannelRetrieves the total count of products published to a specific sales channel. Limited to a maximum of 10000 by default.
Countquery: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| barcode | string | Filter by the product variant barcode field. |
- barcode:ABC-abc-1234 |
||
| bundles | boolean | Filter by a product bundle. A product bundle is a set of two or more related products, which are commonly offered at a discount. | - bundles:true |
||
| category_id | string | Filter by the product category ID (product.category.id). A product category is the category of a product from Shopify's Standard Product Taxonomy. |
- category_id:sg-4-17-2-17 |
||
| collection_id | id | Filter by the collection id field. |
- collection_id:108179161409 |
||
| combined_listing_role | string | Filter by the role of the product in a combined listing. | - parent- child- no_role |
- combined_listing_role:parent |
|
| created_at | time | Filter by the date and time when the product was created. | - created_at:>'2020-10-21T23:39:20Z'- created_at:<now- created_at:<='2024' |
||
| delivery_profile_id | id | Filter by the delivery profile id field. |
- delivery_profile_id:108179161409 |
||
| error_feedback | string | Filter by products with publishing errors. | |||
| gift_card | boolean | Filter by the product isGiftCard field. |
- gift_card:true |
||
| handle | string | Filter by a comma-separated list of product handles. | - handle:the-minimal-snowboard |
||
| has_only_composites | boolean | Filter by products that have only composite variants. | - has_only_composites:true |
||
| has_only_default_variant | boolean | Filter by products that have only a default variant. A default variant is the only variant if no other variants are specified. | - has_only_default_variant:true |
||
| has_variant_with_components | boolean | Filter by products that have variants with associated components. | - has_variant_with_components:true |
||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| inventory_total | integer | Filter by inventory count. | - inventory_total:0- inventory_total:>150- inventory_total:>=200 |
||
| is_price_reduced | boolean | Filter by products that have a reduced price. For more information, refer to the CollectionRule object. |
- is_price_reduced:true |
||
| metafields.{namespace}.{key} | mixed | Filters resources by metafield value. Format: metafields.{namespace}.{key}:{value}. Learn more about querying by metafield value. |
- metafields.custom.on_sale:true- metafields.product.material:"gid://shopify/Metaobject/43458085" |
||
| out_of_stock_somewhere | boolean | Filter by products that are out of stock in at least one location. | - out_of_stock_somewhere:true |
||
| price | bigdecimal | Filter by the product variant price field. |
- price:100.57 |
||
| product_configuration_owner | string | Filter by the app id field. |
- product_configuration_owner:10001 |
||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| product_type | string | Filter by a comma-separated list of product types. | - product_type:snowboard |
||
| publication_ids | string | Filter by a comma-separated list of publication IDs that are associated with the product. | - publication_ids:184111530305,184111694145 |
||
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_at | time | Filter by the date and time when the product was published to the online store and other sales channels. | - published_at:>2020-10-21T23:39:20Z- published_at:<now- published_at:<=2024 |
||
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using the channel app ID (Channel.app.id) with suffixes: - {channel_app_id}-published: Returns resources published to the specified channel. - {channel_app_id}-visible: Same as {channel_app_id}-published (kept for backwards compatibility). - {channel_app_id}-intended: Returns resources added to the channel but not yet published. - {channel_app_id}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_app_id}-published- * {channel_app_id}-visible- * {channel_app_id}-intended- * {channel_app_id}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:unavailable |
|
| sku | string | Filter by the product variant sku field. Learn more about SKUs. |
- sku:XYZ-12345 |
||
| status | string | Filter by a comma-separated list of statuses. You can use statuses to manage inventory. Shopify only displays products with an ACTIVE status in online stores, sales channels, and apps. |
- active- archived- draft |
active |
- status:active,draft |
| tag | string | Filter objects by the tag field. |
- tag:my_tag |
||
| tag_not | string | Filter by objects that donโt have the specified tag. | - tag_not:my_tag |
||
| title | string | Filter by the product title field. |
- title:The Minimal Snowboard |
||
| tracks_inventory | boolean | Filter by products that have inventory tracking enabled. | - tracks_inventory:true |
||
| updated_at | time | Filter by the date and time when the product was last updated. | - updated_at:>'2020-10-21T23:39:20Z'- updated_at:<now- updated_at:<='2024' |
||
| variant_id | id | Filter by the product variant id field. |
- variant_id:45779434701121 |
||
| variant_title | string | Filter by the product variant title field. |
- variant_title:'Special ski wax' |
||
| vendor | string | Filter by the origin or source of the product. Learn more about vendors and managing vendor information. | - vendor:Snowdevil- vendor:Snowdevil OR vendor:Icedevil |
||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
limit: Int - The upper bound on count value before returning a result. Use null to have no limit.
Retrieves the total count of products published to a specific sales channel. Limited to a maximum of 10000 by default.
Countquery: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| barcode | string | Filter by the product variant barcode field. |
- barcode:ABC-abc-1234 |
||
| bundles | boolean | Filter by a product bundle. A product bundle is a set of two or more related products, which are commonly offered at a discount. | - bundles:true |
||
| category_id | string | Filter by the product category ID (product.category.id). A product category is the category of a product from Shopify's Standard Product Taxonomy. |
- category_id:sg-4-17-2-17 |
||
| collection_id | id | Filter by the collection id field. |
- collection_id:108179161409 |
||
| combined_listing_role | string | Filter by the role of the product in a combined listing. | - parent- child- no_role |
- combined_listing_role:parent |
|
| created_at | time | Filter by the date and time when the product was created. | - created_at:>'2020-10-21T23:39:20Z'- created_at:<now- created_at:<='2024' |
||
| delivery_profile_id | id | Filter by the delivery profile id field. |
- delivery_profile_id:108179161409 |
||
| error_feedback | string | Filter by products with publishing errors. | |||
| gift_card | boolean | Filter by the product isGiftCard field. |
- gift_card:true |
||
| handle | string | Filter by a comma-separated list of product handles. | - handle:the-minimal-snowboard |
||
| has_only_composites | boolean | Filter by products that have only composite variants. | - has_only_composites:true |
||
| has_only_default_variant | boolean | Filter by products that have only a default variant. A default variant is the only variant if no other variants are specified. | - has_only_default_variant:true |
||
| has_variant_with_components | boolean | Filter by products that have variants with associated components. | - has_variant_with_components:true |
||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| inventory_total | integer | Filter by inventory count. | - inventory_total:0- inventory_total:>150- inventory_total:>=200 |
||
| is_price_reduced | boolean | Filter by products that have a reduced price. For more information, refer to the CollectionRule object. |
- is_price_reduced:true |
||
| metafields.{namespace}.{key} | mixed | Filters resources by metafield value. Format: metafields.{namespace}.{key}:{value}. Learn more about querying by metafield value. |
- metafields.custom.on_sale:true- metafields.product.material:"gid://shopify/Metaobject/43458085" |
||
| out_of_stock_somewhere | boolean | Filter by products that are out of stock in at least one location. | - out_of_stock_somewhere:true |
||
| price | bigdecimal | Filter by the product variant price field. |
- price:100.57 |
||
| product_configuration_owner | string | Filter by the app id field. |
- product_configuration_owner:10001 |
||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| product_type | string | Filter by a comma-separated list of product types. | - product_type:snowboard |
||
| publication_ids | string | Filter by a comma-separated list of publication IDs that are associated with the product. | - publication_ids:184111530305,184111694145 |
||
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_at | time | Filter by the date and time when the product was published to the online store and other sales channels. | - published_at:>2020-10-21T23:39:20Z- published_at:<now- published_at:<=2024 |
||
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using a channel ID, channel handle, channel app ID (Channel.app.id), or app handle with suffixes: - {id_or_handle}-published: Returns resources published to the specified channel. - {id_or_handle}-visible: Same as {id_or_handle}-published (kept for backwards compatibility). - {id_or_handle}-intended: Returns resources added to the channel but not yet published. - {id_or_handle}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_id_or_handle}-published- * {channel_id_or_handle}-visible- * {channel_id_or_handle}-intended- * {channel_id_or_handle}-hidden- * {channel_app_id_or_handle}-published- * {channel_app_id_or_handle}-visible- * {channel_app_id_or_handle}-intended- * {channel_app_id_or_handle}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:my-channel-handle-published- published_status:unavailable |
|
| sku | string | Filter by the product variant sku field. Learn more about SKUs. |
- sku:XYZ-12345 |
||
| status | string | Filter by a comma-separated list of statuses. You can use statuses to manage inventory. Shopify only displays products with an ACTIVE status in online stores, sales channels, and apps. |
- active- archived- draft |
active |
- status:active,draft |
| tag | string | Filter objects by the tag field. |
- tag:my_tag |
||
| tag_not | string | Filter by objects that donโt have the specified tag. | - tag_not:my_tag |
||
| title | string | Filter by the product title field. |
- title:The Minimal Snowboard |
||
| tracks_inventory | boolean | Filter by products that have inventory tracking enabled. | - tracks_inventory:true |
||
| updated_at | time | Filter by the date and time when the product was last updated. | - updated_at:>'2020-10-21T23:39:20Z'- updated_at:<now- updated_at:<='2024' |
||
| variant_id | id | Filter by the product variant id field. |
- variant_id:45779434701121 |
||
| variant_title | string | Filter by the product variant title field. |
- variant_title:'Special ski wax' |
||
| vendor | string | Filter by the origin or source of the product. Learn more about vendors and managing vendor information. | - vendor:Snowdevil- vendor:Snowdevil OR vendor:Icedevil |
||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
limit: Int - The upper bound on count value before returning a result. Use null to have no limit.
elementKeyThe key of the failing validation element.
elementKeyThe key of the failing validation element.
collectionscollections on ProductA list of collections
that include the product.
CollectionConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
sortKey: CollectionSortKeys - Sort the underlying list using a key. If your query is slow or returns an error, then try specifying a sort key that matches the field used in the search.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| collection_type | string | - custom- smart |
|||
| handle | string | ||||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| product_id | id | Filter by collections containing a product by its ID. | |||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_at | time | Filter by the date and time when the collection was published to the Online Store. | |||
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using the channel app ID (Channel.app.id) with suffixes: - {channel_app_id}-published: Returns resources published to the specified channel. - {channel_app_id}-visible: Same as {channel_app_id}-published (kept for backwards compatibility). - {channel_app_id}-intended: Returns resources added to the channel but not yet published. - {channel_app_id}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_app_id}-published- * {channel_app_id}-visible- * {channel_app_id}-intended- * {channel_app_id}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:unavailable |
|
| title | string | ||||
| updated_at | time | ||||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
A list of collections
that include the product.
CollectionConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
sortKey: CollectionSortKeys - Sort the underlying list using a key. If your query is slow or returns an error, then try specifying a sort key that matches the field used in the search.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| collection_type | string | - custom- smart |
|||
| handle | string | ||||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| product_id | id | Filter by collections containing a product by its ID. | |||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_at | time | Filter by the date and time when the collection was published to the Online Store. | |||
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using a channel ID, channel handle, channel app ID (Channel.app.id), or app handle with suffixes: - {id_or_handle}-published: Returns resources published to the specified channel. - {id_or_handle}-visible: Same as {id_or_handle}-published (kept for backwards compatibility). - {id_or_handle}-intended: Returns resources added to the channel but not yet published. - {id_or_handle}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_id_or_handle}-published- * {channel_id_or_handle}-visible- * {channel_id_or_handle}-intended- * {channel_id_or_handle}-hidden- * {channel_app_id_or_handle}-published- * {channel_app_id_or_handle}-visible- * {channel_app_id_or_handle}-intended- * {channel_app_id_or_handle}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:my-channel-handle-published- published_status:unavailable |
|
| title | string | ||||
| updated_at | time | ||||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
productParentsproductParents on ProductA list of products that has a variant that contains any of this product's variants as a component.
ProductConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| barcode | string | Filter by the product variant barcode field. |
- barcode:ABC-abc-1234 |
||
| bundles | boolean | Filter by a product bundle. A product bundle is a set of two or more related products, which are commonly offered at a discount. | - bundles:true |
||
| category_id | string | Filter by the product category ID (product.category.id). A product category is the category of a product from Shopify's Standard Product Taxonomy. |
- category_id:sg-4-17-2-17 |
||
| collection_id | id | Filter by the collection id field. |
- collection_id:108179161409 |
||
| combined_listing_role | string | Filter by the role of the product in a combined listing. | - parent- child- no_role |
- combined_listing_role:parent |
|
| created_at | time | Filter by the date and time when the product was created. | - created_at:>'2020-10-21T23:39:20Z'- created_at:<now- created_at:<='2024' |
||
| delivery_profile_id | id | Filter by the delivery profile id field. |
- delivery_profile_id:108179161409 |
||
| error_feedback | string | Filter by products with publishing errors. | |||
| gift_card | boolean | Filter by the product isGiftCard field. |
- gift_card:true |
||
| handle | string | Filter by a comma-separated list of product handles. | - handle:the-minimal-snowboard |
||
| has_only_composites | boolean | Filter by products that have only composite variants. | - has_only_composites:true |
||
| has_only_default_variant | boolean | Filter by products that have only a default variant. A default variant is the only variant if no other variants are specified. | - has_only_default_variant:true |
||
| has_variant_with_components | boolean | Filter by products that have variants with associated components. | - has_variant_with_components:true |
||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| inventory_total | integer | Filter by inventory count. | - inventory_total:0- inventory_total:>150- inventory_total:>=200 |
||
| is_price_reduced | boolean | Filter by products that have a reduced price. For more information, refer to the CollectionRule object. |
- is_price_reduced:true |
||
| metafields.{namespace}.{key} | mixed | Filters resources by metafield value. Format: metafields.{namespace}.{key}:{value}. Learn more about querying by metafield value. |
- metafields.custom.on_sale:true- metafields.product.material:"gid://shopify/Metaobject/43458085" |
||
| out_of_stock_somewhere | boolean | Filter by products that are out of stock in at least one location. | - out_of_stock_somewhere:true |
||
| price | bigdecimal | Filter by the product variant price field. |
- price:100.57 |
||
| product_configuration_owner | string | Filter by the app id field. |
- product_configuration_owner:10001 |
||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| product_type | string | Filter by a comma-separated list of product types. | - product_type:snowboard |
||
| publication_ids | string | Filter by a comma-separated list of publication IDs that are associated with the product. | - publication_ids:184111530305,184111694145 |
||
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_at | time | Filter by the date and time when the product was published to the online store and other sales channels. | - published_at:>2020-10-21T23:39:20Z- published_at:<now- published_at:<=2024 |
||
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using the channel app ID (Channel.app.id) with suffixes: - {channel_app_id}-published: Returns resources published to the specified channel. - {channel_app_id}-visible: Same as {channel_app_id}-published (kept for backwards compatibility). - {channel_app_id}-intended: Returns resources added to the channel but not yet published. - {channel_app_id}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_app_id}-published- * {channel_app_id}-visible- * {channel_app_id}-intended- * {channel_app_id}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:unavailable |
|
| sku | string | Filter by the product variant sku field. Learn more about SKUs. |
- sku:XYZ-12345 |
||
| status | string | Filter by a comma-separated list of statuses. You can use statuses to manage inventory. Shopify only displays products with an ACTIVE status in online stores, sales channels, and apps. |
- active- archived- draft |
active |
- status:active,draft |
| tag | string | Filter objects by the tag field. |
- tag:my_tag |
||
| tag_not | string | Filter by objects that donโt have the specified tag. | - tag_not:my_tag |
||
| title | string | Filter by the product title field. |
- title:The Minimal Snowboard |
||
| tracks_inventory | boolean | Filter by products that have inventory tracking enabled. | - tracks_inventory:true |
||
| updated_at | time | Filter by the date and time when the product was last updated. | - updated_at:>'2020-10-21T23:39:20Z'- updated_at:<now- updated_at:<='2024' |
||
| variant_id | id | Filter by the product variant id field. |
- variant_id:45779434701121 |
||
| variant_title | string | Filter by the product variant title field. |
- variant_title:'Special ski wax' |
||
| vendor | string | Filter by the origin or source of the product. Learn more about vendors and managing vendor information. | - vendor:Snowdevil- vendor:Snowdevil OR vendor:Icedevil |
||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
A list of products that has a variant that contains any of this product's variants as a component.
ProductConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| barcode | string | Filter by the product variant barcode field. |
- barcode:ABC-abc-1234 |
||
| bundles | boolean | Filter by a product bundle. A product bundle is a set of two or more related products, which are commonly offered at a discount. | - bundles:true |
||
| category_id | string | Filter by the product category ID (product.category.id). A product category is the category of a product from Shopify's Standard Product Taxonomy. |
- category_id:sg-4-17-2-17 |
||
| collection_id | id | Filter by the collection id field. |
- collection_id:108179161409 |
||
| combined_listing_role | string | Filter by the role of the product in a combined listing. | - parent- child- no_role |
- combined_listing_role:parent |
|
| created_at | time | Filter by the date and time when the product was created. | - created_at:>'2020-10-21T23:39:20Z'- created_at:<now- created_at:<='2024' |
||
| delivery_profile_id | id | Filter by the delivery profile id field. |
- delivery_profile_id:108179161409 |
||
| error_feedback | string | Filter by products with publishing errors. | |||
| gift_card | boolean | Filter by the product isGiftCard field. |
- gift_card:true |
||
| handle | string | Filter by a comma-separated list of product handles. | - handle:the-minimal-snowboard |
||
| has_only_composites | boolean | Filter by products that have only composite variants. | - has_only_composites:true |
||
| has_only_default_variant | boolean | Filter by products that have only a default variant. A default variant is the only variant if no other variants are specified. | - has_only_default_variant:true |
||
| has_variant_with_components | boolean | Filter by products that have variants with associated components. | - has_variant_with_components:true |
||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| inventory_total | integer | Filter by inventory count. | - inventory_total:0- inventory_total:>150- inventory_total:>=200 |
||
| is_price_reduced | boolean | Filter by products that have a reduced price. For more information, refer to the CollectionRule object. |
- is_price_reduced:true |
||
| metafields.{namespace}.{key} | mixed | Filters resources by metafield value. Format: metafields.{namespace}.{key}:{value}. Learn more about querying by metafield value. |
- metafields.custom.on_sale:true- metafields.product.material:"gid://shopify/Metaobject/43458085" |
||
| out_of_stock_somewhere | boolean | Filter by products that are out of stock in at least one location. | - out_of_stock_somewhere:true |
||
| price | bigdecimal | Filter by the product variant price field. |
- price:100.57 |
||
| product_configuration_owner | string | Filter by the app id field. |
- product_configuration_owner:10001 |
||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| product_type | string | Filter by a comma-separated list of product types. | - product_type:snowboard |
||
| publication_ids | string | Filter by a comma-separated list of publication IDs that are associated with the product. | - publication_ids:184111530305,184111694145 |
||
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_at | time | Filter by the date and time when the product was published to the online store and other sales channels. | - published_at:>2020-10-21T23:39:20Z- published_at:<now- published_at:<=2024 |
||
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using a channel ID, channel handle, channel app ID (Channel.app.id), or app handle with suffixes: - {id_or_handle}-published: Returns resources published to the specified channel. - {id_or_handle}-visible: Same as {id_or_handle}-published (kept for backwards compatibility). - {id_or_handle}-intended: Returns resources added to the channel but not yet published. - {id_or_handle}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_id_or_handle}-published- * {channel_id_or_handle}-visible- * {channel_id_or_handle}-intended- * {channel_id_or_handle}-hidden- * {channel_app_id_or_handle}-published- * {channel_app_id_or_handle}-visible- * {channel_app_id_or_handle}-intended- * {channel_app_id_or_handle}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:my-channel-handle-published- published_status:unavailable |
|
| sku | string | Filter by the product variant sku field. Learn more about SKUs. |
- sku:XYZ-12345 |
||
| status | string | Filter by a comma-separated list of statuses. You can use statuses to manage inventory. Shopify only displays products with an ACTIVE status in online stores, sales channels, and apps. |
- active- archived- draft |
active |
- status:active,draft |
| tag | string | Filter objects by the tag field. |
- tag:my_tag |
||
| tag_not | string | Filter by objects that donโt have the specified tag. | - tag_not:my_tag |
||
| title | string | Filter by the product title field. |
- title:The Minimal Snowboard |
||
| tracks_inventory | boolean | Filter by products that have inventory tracking enabled. | - tracks_inventory:true |
||
| updated_at | time | Filter by the date and time when the product was last updated. | - updated_at:>'2020-10-21T23:39:20Z'- updated_at:<now- updated_at:<='2024' |
||
| variant_id | id | Filter by the product variant id field. |
- variant_id:45779434701121 |
||
| variant_title | string | Filter by the product variant title field. |
- variant_title:'Special ski wax' |
||
| vendor | string | Filter by the origin or source of the product. Learn more about vendors and managing vendor information. | - vendor:Snowdevil- vendor:Snowdevil OR vendor:Icedevil |
||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
productParentsproductParents on ProductVariantA list of products that have product variants that contain this variant as a product component.
ProductConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| barcode | string | Filter by the product variant barcode field. |
- barcode:ABC-abc-1234 |
||
| bundles | boolean | Filter by a product bundle. A product bundle is a set of two or more related products, which are commonly offered at a discount. | - bundles:true |
||
| category_id | string | Filter by the product category ID (product.category.id). A product category is the category of a product from Shopify's Standard Product Taxonomy. |
- category_id:sg-4-17-2-17 |
||
| collection_id | id | Filter by the collection id field. |
- collection_id:108179161409 |
||
| combined_listing_role | string | Filter by the role of the product in a combined listing. | - parent- child- no_role |
- combined_listing_role:parent |
|
| created_at | time | Filter by the date and time when the product was created. | - created_at:>'2020-10-21T23:39:20Z'- created_at:<now- created_at:<='2024' |
||
| delivery_profile_id | id | Filter by the delivery profile id field. |
- delivery_profile_id:108179161409 |
||
| error_feedback | string | Filter by products with publishing errors. | |||
| gift_card | boolean | Filter by the product isGiftCard field. |
- gift_card:true |
||
| handle | string | Filter by a comma-separated list of product handles. | - handle:the-minimal-snowboard |
||
| has_only_composites | boolean | Filter by products that have only composite variants. | - has_only_composites:true |
||
| has_only_default_variant | boolean | Filter by products that have only a default variant. A default variant is the only variant if no other variants are specified. | - has_only_default_variant:true |
||
| has_variant_with_components | boolean | Filter by products that have variants with associated components. | - has_variant_with_components:true |
||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| inventory_total | integer | Filter by inventory count. | - inventory_total:0- inventory_total:>150- inventory_total:>=200 |
||
| is_price_reduced | boolean | Filter by products that have a reduced price. For more information, refer to the CollectionRule object. |
- is_price_reduced:true |
||
| metafields.{namespace}.{key} | mixed | Filters resources by metafield value. Format: metafields.{namespace}.{key}:{value}. Learn more about querying by metafield value. |
- metafields.custom.on_sale:true- metafields.product.material:"gid://shopify/Metaobject/43458085" |
||
| out_of_stock_somewhere | boolean | Filter by products that are out of stock in at least one location. | - out_of_stock_somewhere:true |
||
| price | bigdecimal | Filter by the product variant price field. |
- price:100.57 |
||
| product_configuration_owner | string | Filter by the app id field. |
- product_configuration_owner:10001 |
||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| product_type | string | Filter by a comma-separated list of product types. | - product_type:snowboard |
||
| publication_ids | string | Filter by a comma-separated list of publication IDs that are associated with the product. | - publication_ids:184111530305,184111694145 |
||
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_at | time | Filter by the date and time when the product was published to the online store and other sales channels. | - published_at:>2020-10-21T23:39:20Z- published_at:<now- published_at:<=2024 |
||
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using the channel app ID (Channel.app.id) with suffixes: - {channel_app_id}-published: Returns resources published to the specified channel. - {channel_app_id}-visible: Same as {channel_app_id}-published (kept for backwards compatibility). - {channel_app_id}-intended: Returns resources added to the channel but not yet published. - {channel_app_id}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_app_id}-published- * {channel_app_id}-visible- * {channel_app_id}-intended- * {channel_app_id}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:unavailable |
|
| sku | string | Filter by the product variant sku field. Learn more about SKUs. |
- sku:XYZ-12345 |
||
| status | string | Filter by a comma-separated list of statuses. You can use statuses to manage inventory. Shopify only displays products with an ACTIVE status in online stores, sales channels, and apps. |
- active- archived- draft |
active |
- status:active,draft |
| tag | string | Filter objects by the tag field. |
- tag:my_tag |
||
| tag_not | string | Filter by objects that donโt have the specified tag. | - tag_not:my_tag |
||
| title | string | Filter by the product title field. |
- title:The Minimal Snowboard |
||
| tracks_inventory | boolean | Filter by products that have inventory tracking enabled. | - tracks_inventory:true |
||
| updated_at | time | Filter by the date and time when the product was last updated. | - updated_at:>'2020-10-21T23:39:20Z'- updated_at:<now- updated_at:<='2024' |
||
| variant_id | id | Filter by the product variant id field. |
- variant_id:45779434701121 |
||
| variant_title | string | Filter by the product variant title field. |
- variant_title:'Special ski wax' |
||
| vendor | string | Filter by the origin or source of the product. Learn more about vendors and managing vendor information. | - vendor:Snowdevil- vendor:Snowdevil OR vendor:Icedevil |
||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
A list of products that have product variants that contain this variant as a product component.
ProductConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| barcode | string | Filter by the product variant barcode field. |
- barcode:ABC-abc-1234 |
||
| bundles | boolean | Filter by a product bundle. A product bundle is a set of two or more related products, which are commonly offered at a discount. | - bundles:true |
||
| category_id | string | Filter by the product category ID (product.category.id). A product category is the category of a product from Shopify's Standard Product Taxonomy. |
- category_id:sg-4-17-2-17 |
||
| collection_id | id | Filter by the collection id field. |
- collection_id:108179161409 |
||
| combined_listing_role | string | Filter by the role of the product in a combined listing. | - parent- child- no_role |
- combined_listing_role:parent |
|
| created_at | time | Filter by the date and time when the product was created. | - created_at:>'2020-10-21T23:39:20Z'- created_at:<now- created_at:<='2024' |
||
| delivery_profile_id | id | Filter by the delivery profile id field. |
- delivery_profile_id:108179161409 |
||
| error_feedback | string | Filter by products with publishing errors. | |||
| gift_card | boolean | Filter by the product isGiftCard field. |
- gift_card:true |
||
| handle | string | Filter by a comma-separated list of product handles. | - handle:the-minimal-snowboard |
||
| has_only_composites | boolean | Filter by products that have only composite variants. | - has_only_composites:true |
||
| has_only_default_variant | boolean | Filter by products that have only a default variant. A default variant is the only variant if no other variants are specified. | - has_only_default_variant:true |
||
| has_variant_with_components | boolean | Filter by products that have variants with associated components. | - has_variant_with_components:true |
||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| inventory_total | integer | Filter by inventory count. | - inventory_total:0- inventory_total:>150- inventory_total:>=200 |
||
| is_price_reduced | boolean | Filter by products that have a reduced price. For more information, refer to the CollectionRule object. |
- is_price_reduced:true |
||
| metafields.{namespace}.{key} | mixed | Filters resources by metafield value. Format: metafields.{namespace}.{key}:{value}. Learn more about querying by metafield value. |
- metafields.custom.on_sale:true- metafields.product.material:"gid://shopify/Metaobject/43458085" |
||
| out_of_stock_somewhere | boolean | Filter by products that are out of stock in at least one location. | - out_of_stock_somewhere:true |
||
| price | bigdecimal | Filter by the product variant price field. |
- price:100.57 |
||
| product_configuration_owner | string | Filter by the app id field. |
- product_configuration_owner:10001 |
||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| product_type | string | Filter by a comma-separated list of product types. | - product_type:snowboard |
||
| publication_ids | string | Filter by a comma-separated list of publication IDs that are associated with the product. | - publication_ids:184111530305,184111694145 |
||
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_at | time | Filter by the date and time when the product was published to the online store and other sales channels. | - published_at:>2020-10-21T23:39:20Z- published_at:<now- published_at:<=2024 |
||
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using a channel ID, channel handle, channel app ID (Channel.app.id), or app handle with suffixes: - {id_or_handle}-published: Returns resources published to the specified channel. - {id_or_handle}-visible: Same as {id_or_handle}-published (kept for backwards compatibility). - {id_or_handle}-intended: Returns resources added to the channel but not yet published. - {id_or_handle}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_id_or_handle}-published- * {channel_id_or_handle}-visible- * {channel_id_or_handle}-intended- * {channel_id_or_handle}-hidden- * {channel_app_id_or_handle}-published- * {channel_app_id_or_handle}-visible- * {channel_app_id_or_handle}-intended- * {channel_app_id_or_handle}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:my-channel-handle-published- published_status:unavailable |
|
| sku | string | Filter by the product variant sku field. Learn more about SKUs. |
- sku:XYZ-12345 |
||
| status | string | Filter by a comma-separated list of statuses. You can use statuses to manage inventory. Shopify only displays products with an ACTIVE status in online stores, sales channels, and apps. |
- active- archived- draft |
active |
- status:active,draft |
| tag | string | Filter objects by the tag field. |
- tag:my_tag |
||
| tag_not | string | Filter by objects that donโt have the specified tag. | - tag_not:my_tag |
||
| title | string | Filter by the product title field. |
- title:The Minimal Snowboard |
||
| tracks_inventory | boolean | Filter by products that have inventory tracking enabled. | - tracks_inventory:true |
||
| updated_at | time | Filter by the date and time when the product was last updated. | - updated_at:>'2020-10-21T23:39:20Z'- updated_at:<now- updated_at:<='2024' |
||
| variant_id | id | Filter by the product variant id field. |
- variant_id:45779434701121 |
||
| variant_title | string | Filter by the product variant title field. |
- variant_title:'Special ski wax' |
||
| vendor | string | Filter by the origin or source of the product. Learn more about vendors and managing vendor information. | - vendor:Snowdevil- vendor:Snowdevil OR vendor:Icedevil |
||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
supportsPreOrderssupportsSubscriptionssupportsTryBeforeYouBuyincludedProductsincludedProducts on PublicationThe list of products included, but not necessarily published, in the publication.
ProductConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
sortKey: ProductSortKeys - Sort the underlying list using a key. If your query is slow or returns an error, then try specifying a sort key that matches the field used in the search.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| barcode | string | Filter by the product variant barcode field. |
- barcode:ABC-abc-1234 |
||
| bundles | boolean | Filter by a product bundle. A product bundle is a set of two or more related products, which are commonly offered at a discount. | - bundles:true |
||
| category_id | string | Filter by the product category ID (product.category.id). A product category is the category of a product from Shopify's Standard Product Taxonomy. |
- category_id:sg-4-17-2-17 |
||
| collection_id | id | Filter by the collection id field. |
- collection_id:108179161409 |
||
| combined_listing_role | string | Filter by the role of the product in a combined listing. | - parent- child- no_role |
- combined_listing_role:parent |
|
| created_at | time | Filter by the date and time when the product was created. | - created_at:>'2020-10-21T23:39:20Z'- created_at:<now- created_at:<='2024' |
||
| delivery_profile_id | id | Filter by the delivery profile id field. |
- delivery_profile_id:108179161409 |
||
| error_feedback | string | Filter by products with publishing errors. | |||
| gift_card | boolean | Filter by the product isGiftCard field. |
- gift_card:true |
||
| handle | string | Filter by a comma-separated list of product handles. | - handle:the-minimal-snowboard |
||
| has_only_composites | boolean | Filter by products that have only composite variants. | - has_only_composites:true |
||
| has_only_default_variant | boolean | Filter by products that have only a default variant. A default variant is the only variant if no other variants are specified. | - has_only_default_variant:true |
||
| has_variant_with_components | boolean | Filter by products that have variants with associated components. | - has_variant_with_components:true |
||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| inventory_total | integer | Filter by inventory count. | - inventory_total:0- inventory_total:>150- inventory_total:>=200 |
||
| is_price_reduced | boolean | Filter by products that have a reduced price. For more information, refer to the CollectionRule object. |
- is_price_reduced:true |
||
| metafields.{namespace}.{key} | mixed | Filters resources by metafield value. Format: metafields.{namespace}.{key}:{value}. Learn more about querying by metafield value. |
- metafields.custom.on_sale:true- metafields.product.material:"gid://shopify/Metaobject/43458085" |
||
| out_of_stock_somewhere | boolean | Filter by products that are out of stock in at least one location. | - out_of_stock_somewhere:true |
||
| price | bigdecimal | Filter by the product variant price field. |
- price:100.57 |
||
| product_configuration_owner | string | Filter by the app id field. |
- product_configuration_owner:10001 |
||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| product_type | string | Filter by a comma-separated list of product types. | - product_type:snowboard |
||
| publication_ids | string | Filter by a comma-separated list of publication IDs that are associated with the product. | - publication_ids:184111530305,184111694145 |
||
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_at | time | Filter by the date and time when the product was published to the online store and other sales channels. | - published_at:>2020-10-21T23:39:20Z- published_at:<now- published_at:<=2024 |
||
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using the channel app ID (Channel.app.id) with suffixes: - {channel_app_id}-published: Returns resources published to the specified channel. - {channel_app_id}-visible: Same as {channel_app_id}-published (kept for backwards compatibility). - {channel_app_id}-intended: Returns resources added to the channel but not yet published. - {channel_app_id}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_app_id}-published- * {channel_app_id}-visible- * {channel_app_id}-intended- * {channel_app_id}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:unavailable |
|
| sku | string | Filter by the product variant sku field. Learn more about SKUs. |
- sku:XYZ-12345 |
||
| status | string | Filter by a comma-separated list of statuses. You can use statuses to manage inventory. Shopify only displays products with an ACTIVE status in online stores, sales channels, and apps. |
- active- archived- draft |
active |
- status:active,draft |
| tag | string | Filter objects by the tag field. |
- tag:my_tag |
||
| tag_not | string | Filter by objects that donโt have the specified tag. | - tag_not:my_tag |
||
| title | string | Filter by the product title field. |
- title:The Minimal Snowboard |
||
| tracks_inventory | boolean | Filter by products that have inventory tracking enabled. | - tracks_inventory:true |
||
| updated_at | time | Filter by the date and time when the product was last updated. | - updated_at:>'2020-10-21T23:39:20Z'- updated_at:<now- updated_at:<='2024' |
||
| variant_id | id | Filter by the product variant id field. |
- variant_id:45779434701121 |
||
| variant_title | string | Filter by the product variant title field. |
- variant_title:'Special ski wax' |
||
| vendor | string | Filter by the origin or source of the product. Learn more about vendors and managing vendor information. | - vendor:Snowdevil- vendor:Snowdevil OR vendor:Icedevil |
||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
savedSearchId: ID - The ID of a saved search.
The searchโs query string is used as the query argument.
The list of products included, but not necessarily published, in the publication.
ProductConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
sortKey: ProductSortKeys - Sort the underlying list using a key. If your query is slow or returns an error, then try specifying a sort key that matches the field used in the search.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| barcode | string | Filter by the product variant barcode field. |
- barcode:ABC-abc-1234 |
||
| bundles | boolean | Filter by a product bundle. A product bundle is a set of two or more related products, which are commonly offered at a discount. | - bundles:true |
||
| category_id | string | Filter by the product category ID (product.category.id). A product category is the category of a product from Shopify's Standard Product Taxonomy. |
- category_id:sg-4-17-2-17 |
||
| collection_id | id | Filter by the collection id field. |
- collection_id:108179161409 |
||
| combined_listing_role | string | Filter by the role of the product in a combined listing. | - parent- child- no_role |
- combined_listing_role:parent |
|
| created_at | time | Filter by the date and time when the product was created. | - created_at:>'2020-10-21T23:39:20Z'- created_at:<now- created_at:<='2024' |
||
| delivery_profile_id | id | Filter by the delivery profile id field. |
- delivery_profile_id:108179161409 |
||
| error_feedback | string | Filter by products with publishing errors. | |||
| gift_card | boolean | Filter by the product isGiftCard field. |
- gift_card:true |
||
| handle | string | Filter by a comma-separated list of product handles. | - handle:the-minimal-snowboard |
||
| has_only_composites | boolean | Filter by products that have only composite variants. | - has_only_composites:true |
||
| has_only_default_variant | boolean | Filter by products that have only a default variant. A default variant is the only variant if no other variants are specified. | - has_only_default_variant:true |
||
| has_variant_with_components | boolean | Filter by products that have variants with associated components. | - has_variant_with_components:true |
||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| inventory_total | integer | Filter by inventory count. | - inventory_total:0- inventory_total:>150- inventory_total:>=200 |
||
| is_price_reduced | boolean | Filter by products that have a reduced price. For more information, refer to the CollectionRule object. |
- is_price_reduced:true |
||
| metafields.{namespace}.{key} | mixed | Filters resources by metafield value. Format: metafields.{namespace}.{key}:{value}. Learn more about querying by metafield value. |
- metafields.custom.on_sale:true- metafields.product.material:"gid://shopify/Metaobject/43458085" |
||
| out_of_stock_somewhere | boolean | Filter by products that are out of stock in at least one location. | - out_of_stock_somewhere:true |
||
| price | bigdecimal | Filter by the product variant price field. |
- price:100.57 |
||
| product_configuration_owner | string | Filter by the app id field. |
- product_configuration_owner:10001 |
||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| product_type | string | Filter by a comma-separated list of product types. | - product_type:snowboard |
||
| publication_ids | string | Filter by a comma-separated list of publication IDs that are associated with the product. | - publication_ids:184111530305,184111694145 |
||
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_at | time | Filter by the date and time when the product was published to the online store and other sales channels. | - published_at:>2020-10-21T23:39:20Z- published_at:<now- published_at:<=2024 |
||
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using a channel ID, channel handle, channel app ID (Channel.app.id), or app handle with suffixes: - {id_or_handle}-published: Returns resources published to the specified channel. - {id_or_handle}-visible: Same as {id_or_handle}-published (kept for backwards compatibility). - {id_or_handle}-intended: Returns resources added to the channel but not yet published. - {id_or_handle}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_id_or_handle}-published- * {channel_id_or_handle}-visible- * {channel_id_or_handle}-intended- * {channel_id_or_handle}-hidden- * {channel_app_id_or_handle}-published- * {channel_app_id_or_handle}-visible- * {channel_app_id_or_handle}-intended- * {channel_app_id_or_handle}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:my-channel-handle-published- published_status:unavailable |
|
| sku | string | Filter by the product variant sku field. Learn more about SKUs. |
- sku:XYZ-12345 |
||
| status | string | Filter by a comma-separated list of statuses. You can use statuses to manage inventory. Shopify only displays products with an ACTIVE status in online stores, sales channels, and apps. |
- active- archived- draft |
active |
- status:active,draft |
| tag | string | Filter objects by the tag field. |
- tag:my_tag |
||
| tag_not | string | Filter by objects that donโt have the specified tag. | - tag_not:my_tag |
||
| title | string | Filter by the product title field. |
- title:The Minimal Snowboard |
||
| tracks_inventory | boolean | Filter by products that have inventory tracking enabled. | - tracks_inventory:true |
||
| updated_at | time | Filter by the date and time when the product was last updated. | - updated_at:>'2020-10-21T23:39:20Z'- updated_at:<now- updated_at:<='2024' |
||
| variant_id | id | Filter by the product variant id field. |
- variant_id:45779434701121 |
||
| variant_title | string | Filter by the product variant title field. |
- variant_title:'Special ski wax' |
||
| vendor | string | Filter by the origin or source of the product. Learn more about vendors and managing vendor information. | - vendor:Snowdevil- vendor:Snowdevil OR vendor:Icedevil |
||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
savedSearchId: ID - The ID of a saved search.
The searchโs query string is used as the query argument.
includedProductsCountincludedProductsCount on PublicationThe count of products included in the publication. Limited to a maximum of 10000 by default.
Countquery: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| barcode | string | Filter by the product variant barcode field. |
- barcode:ABC-abc-1234 |
||
| bundles | boolean | Filter by a product bundle. A product bundle is a set of two or more related products, which are commonly offered at a discount. | - bundles:true |
||
| category_id | string | Filter by the product category ID (product.category.id). A product category is the category of a product from Shopify's Standard Product Taxonomy. |
- category_id:sg-4-17-2-17 |
||
| collection_id | id | Filter by the collection id field. |
- collection_id:108179161409 |
||
| combined_listing_role | string | Filter by the role of the product in a combined listing. | - parent- child- no_role |
- combined_listing_role:parent |
|
| created_at | time | Filter by the date and time when the product was created. | - created_at:>'2020-10-21T23:39:20Z'- created_at:<now- created_at:<='2024' |
||
| delivery_profile_id | id | Filter by the delivery profile id field. |
- delivery_profile_id:108179161409 |
||
| error_feedback | string | Filter by products with publishing errors. | |||
| gift_card | boolean | Filter by the product isGiftCard field. |
- gift_card:true |
||
| handle | string | Filter by a comma-separated list of product handles. | - handle:the-minimal-snowboard |
||
| has_only_composites | boolean | Filter by products that have only composite variants. | - has_only_composites:true |
||
| has_only_default_variant | boolean | Filter by products that have only a default variant. A default variant is the only variant if no other variants are specified. | - has_only_default_variant:true |
||
| has_variant_with_components | boolean | Filter by products that have variants with associated components. | - has_variant_with_components:true |
||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| inventory_total | integer | Filter by inventory count. | - inventory_total:0- inventory_total:>150- inventory_total:>=200 |
||
| is_price_reduced | boolean | Filter by products that have a reduced price. For more information, refer to the CollectionRule object. |
- is_price_reduced:true |
||
| metafields.{namespace}.{key} | mixed | Filters resources by metafield value. Format: metafields.{namespace}.{key}:{value}. Learn more about querying by metafield value. |
- metafields.custom.on_sale:true- metafields.product.material:"gid://shopify/Metaobject/43458085" |
||
| out_of_stock_somewhere | boolean | Filter by products that are out of stock in at least one location. | - out_of_stock_somewhere:true |
||
| price | bigdecimal | Filter by the product variant price field. |
- price:100.57 |
||
| product_configuration_owner | string | Filter by the app id field. |
- product_configuration_owner:10001 |
||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| product_type | string | Filter by a comma-separated list of product types. | - product_type:snowboard |
||
| publication_ids | string | Filter by a comma-separated list of publication IDs that are associated with the product. | - publication_ids:184111530305,184111694145 |
||
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_at | time | Filter by the date and time when the product was published to the online store and other sales channels. | - published_at:>2020-10-21T23:39:20Z- published_at:<now- published_at:<=2024 |
||
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using the channel app ID (Channel.app.id) with suffixes: - {channel_app_id}-published: Returns resources published to the specified channel. - {channel_app_id}-visible: Same as {channel_app_id}-published (kept for backwards compatibility). - {channel_app_id}-intended: Returns resources added to the channel but not yet published. - {channel_app_id}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_app_id}-published- * {channel_app_id}-visible- * {channel_app_id}-intended- * {channel_app_id}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:unavailable |
|
| sku | string | Filter by the product variant sku field. Learn more about SKUs. |
- sku:XYZ-12345 |
||
| status | string | Filter by a comma-separated list of statuses. You can use statuses to manage inventory. Shopify only displays products with an ACTIVE status in online stores, sales channels, and apps. |
- active- archived- draft |
active |
- status:active,draft |
| tag | string | Filter objects by the tag field. |
- tag:my_tag |
||
| tag_not | string | Filter by objects that donโt have the specified tag. | - tag_not:my_tag |
||
| title | string | Filter by the product title field. |
- title:The Minimal Snowboard |
||
| tracks_inventory | boolean | Filter by products that have inventory tracking enabled. | - tracks_inventory:true |
||
| updated_at | time | Filter by the date and time when the product was last updated. | - updated_at:>'2020-10-21T23:39:20Z'- updated_at:<now- updated_at:<='2024' |
||
| variant_id | id | Filter by the product variant id field. |
- variant_id:45779434701121 |
||
| variant_title | string | Filter by the product variant title field. |
- variant_title:'Special ski wax' |
||
| vendor | string | Filter by the origin or source of the product. Learn more about vendors and managing vendor information. | - vendor:Snowdevil- vendor:Snowdevil OR vendor:Icedevil |
||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
savedSearchId: ID - The ID of an existing saved search.
The searchโs query string is used as the query argument.
Refer to the SavedSearch object.
limit: Int - The upper bound on count value before returning a result. Use null to have no limit.
The count of products included in the publication. Limited to a maximum of 10000 by default.
Countquery: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| barcode | string | Filter by the product variant barcode field. |
- barcode:ABC-abc-1234 |
||
| bundles | boolean | Filter by a product bundle. A product bundle is a set of two or more related products, which are commonly offered at a discount. | - bundles:true |
||
| category_id | string | Filter by the product category ID (product.category.id). A product category is the category of a product from Shopify's Standard Product Taxonomy. |
- category_id:sg-4-17-2-17 |
||
| collection_id | id | Filter by the collection id field. |
- collection_id:108179161409 |
||
| combined_listing_role | string | Filter by the role of the product in a combined listing. | - parent- child- no_role |
- combined_listing_role:parent |
|
| created_at | time | Filter by the date and time when the product was created. | - created_at:>'2020-10-21T23:39:20Z'- created_at:<now- created_at:<='2024' |
||
| delivery_profile_id | id | Filter by the delivery profile id field. |
- delivery_profile_id:108179161409 |
||
| error_feedback | string | Filter by products with publishing errors. | |||
| gift_card | boolean | Filter by the product isGiftCard field. |
- gift_card:true |
||
| handle | string | Filter by a comma-separated list of product handles. | - handle:the-minimal-snowboard |
||
| has_only_composites | boolean | Filter by products that have only composite variants. | - has_only_composites:true |
||
| has_only_default_variant | boolean | Filter by products that have only a default variant. A default variant is the only variant if no other variants are specified. | - has_only_default_variant:true |
||
| has_variant_with_components | boolean | Filter by products that have variants with associated components. | - has_variant_with_components:true |
||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| inventory_total | integer | Filter by inventory count. | - inventory_total:0- inventory_total:>150- inventory_total:>=200 |
||
| is_price_reduced | boolean | Filter by products that have a reduced price. For more information, refer to the CollectionRule object. |
- is_price_reduced:true |
||
| metafields.{namespace}.{key} | mixed | Filters resources by metafield value. Format: metafields.{namespace}.{key}:{value}. Learn more about querying by metafield value. |
- metafields.custom.on_sale:true- metafields.product.material:"gid://shopify/Metaobject/43458085" |
||
| out_of_stock_somewhere | boolean | Filter by products that are out of stock in at least one location. | - out_of_stock_somewhere:true |
||
| price | bigdecimal | Filter by the product variant price field. |
- price:100.57 |
||
| product_configuration_owner | string | Filter by the app id field. |
- product_configuration_owner:10001 |
||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| product_type | string | Filter by a comma-separated list of product types. | - product_type:snowboard |
||
| publication_ids | string | Filter by a comma-separated list of publication IDs that are associated with the product. | - publication_ids:184111530305,184111694145 |
||
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_at | time | Filter by the date and time when the product was published to the online store and other sales channels. | - published_at:>2020-10-21T23:39:20Z- published_at:<now- published_at:<=2024 |
||
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using a channel ID, channel handle, channel app ID (Channel.app.id), or app handle with suffixes: - {id_or_handle}-published: Returns resources published to the specified channel. - {id_or_handle}-visible: Same as {id_or_handle}-published (kept for backwards compatibility). - {id_or_handle}-intended: Returns resources added to the channel but not yet published. - {id_or_handle}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_id_or_handle}-published- * {channel_id_or_handle}-visible- * {channel_id_or_handle}-intended- * {channel_id_or_handle}-hidden- * {channel_app_id_or_handle}-published- * {channel_app_id_or_handle}-visible- * {channel_app_id_or_handle}-intended- * {channel_app_id_or_handle}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:my-channel-handle-published- published_status:unavailable |
|
| sku | string | Filter by the product variant sku field. Learn more about SKUs. |
- sku:XYZ-12345 |
||
| status | string | Filter by a comma-separated list of statuses. You can use statuses to manage inventory. Shopify only displays products with an ACTIVE status in online stores, sales channels, and apps. |
- active- archived- draft |
active |
- status:active,draft |
| tag | string | Filter objects by the tag field. |
- tag:my_tag |
||
| tag_not | string | Filter by objects that donโt have the specified tag. | - tag_not:my_tag |
||
| title | string | Filter by the product title field. |
- title:The Minimal Snowboard |
||
| tracks_inventory | boolean | Filter by products that have inventory tracking enabled. | - tracks_inventory:true |
||
| updated_at | time | Filter by the date and time when the product was last updated. | - updated_at:>'2020-10-21T23:39:20Z'- updated_at:<now- updated_at:<='2024' |
||
| variant_id | id | Filter by the product variant id field. |
- variant_id:45779434701121 |
||
| variant_title | string | Filter by the product variant title field. |
- variant_title:'Special ski wax' |
||
| vendor | string | Filter by the origin or source of the product. Learn more about vendors and managing vendor information. | - vendor:Snowdevil- vendor:Snowdevil OR vendor:Icedevil |
||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
savedSearchId: ID - The ID of an existing saved search.
The searchโs query string is used as the query argument.
Refer to the SavedSearch object.
limit: Int - The upper bound on count value before returning a result. Use null to have no limit.
productsproducts on PublicationThe list of products published to the publication.
ProductConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
sortKey: ProductSortKeys - Sort the underlying list using a key. If your query is slow or returns an error, then try specifying a sort key that matches the field used in the search.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| barcode | string | Filter by the product variant barcode field. |
- barcode:ABC-abc-1234 |
||
| bundles | boolean | Filter by a product bundle. A product bundle is a set of two or more related products, which are commonly offered at a discount. | - bundles:true |
||
| category_id | string | Filter by the product category ID (product.category.id). A product category is the category of a product from Shopify's Standard Product Taxonomy. |
- category_id:sg-4-17-2-17 |
||
| collection_id | id | Filter by the collection id field. |
- collection_id:108179161409 |
||
| combined_listing_role | string | Filter by the role of the product in a combined listing. | - parent- child- no_role |
- combined_listing_role:parent |
|
| created_at | time | Filter by the date and time when the product was created. | - created_at:>'2020-10-21T23:39:20Z'- created_at:<now- created_at:<='2024' |
||
| delivery_profile_id | id | Filter by the delivery profile id field. |
- delivery_profile_id:108179161409 |
||
| error_feedback | string | Filter by products with publishing errors. | |||
| gift_card | boolean | Filter by the product isGiftCard field. |
- gift_card:true |
||
| handle | string | Filter by a comma-separated list of product handles. | - handle:the-minimal-snowboard |
||
| has_only_composites | boolean | Filter by products that have only composite variants. | - has_only_composites:true |
||
| has_only_default_variant | boolean | Filter by products that have only a default variant. A default variant is the only variant if no other variants are specified. | - has_only_default_variant:true |
||
| has_variant_with_components | boolean | Filter by products that have variants with associated components. | - has_variant_with_components:true |
||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| inventory_total | integer | Filter by inventory count. | - inventory_total:0- inventory_total:>150- inventory_total:>=200 |
||
| is_price_reduced | boolean | Filter by products that have a reduced price. For more information, refer to the CollectionRule object. |
- is_price_reduced:true |
||
| metafields.{namespace}.{key} | mixed | Filters resources by metafield value. Format: metafields.{namespace}.{key}:{value}. Learn more about querying by metafield value. |
- metafields.custom.on_sale:true- metafields.product.material:"gid://shopify/Metaobject/43458085" |
||
| out_of_stock_somewhere | boolean | Filter by products that are out of stock in at least one location. | - out_of_stock_somewhere:true |
||
| price | bigdecimal | Filter by the product variant price field. |
- price:100.57 |
||
| product_configuration_owner | string | Filter by the app id field. |
- product_configuration_owner:10001 |
||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| product_type | string | Filter by a comma-separated list of product types. | - product_type:snowboard |
||
| publication_ids | string | Filter by a comma-separated list of publication IDs that are associated with the product. | - publication_ids:184111530305,184111694145 |
||
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_at | time | Filter by the date and time when the product was published to the online store and other sales channels. | - published_at:>2020-10-21T23:39:20Z- published_at:<now- published_at:<=2024 |
||
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using the channel app ID (Channel.app.id) with suffixes: - {channel_app_id}-published: Returns resources published to the specified channel. - {channel_app_id}-visible: Same as {channel_app_id}-published (kept for backwards compatibility). - {channel_app_id}-intended: Returns resources added to the channel but not yet published. - {channel_app_id}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_app_id}-published- * {channel_app_id}-visible- * {channel_app_id}-intended- * {channel_app_id}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:unavailable |
|
| sku | string | Filter by the product variant sku field. Learn more about SKUs. |
- sku:XYZ-12345 |
||
| status | string | Filter by a comma-separated list of statuses. You can use statuses to manage inventory. Shopify only displays products with an ACTIVE status in online stores, sales channels, and apps. |
- active- archived- draft |
active |
- status:active,draft |
| tag | string | Filter objects by the tag field. |
- tag:my_tag |
||
| tag_not | string | Filter by objects that donโt have the specified tag. | - tag_not:my_tag |
||
| title | string | Filter by the product title field. |
- title:The Minimal Snowboard |
||
| tracks_inventory | boolean | Filter by products that have inventory tracking enabled. | - tracks_inventory:true |
||
| updated_at | time | Filter by the date and time when the product was last updated. | - updated_at:>'2020-10-21T23:39:20Z'- updated_at:<now- updated_at:<='2024' |
||
| variant_id | id | Filter by the product variant id field. |
- variant_id:45779434701121 |
||
| variant_title | string | Filter by the product variant title field. |
- variant_title:'Special ski wax' |
||
| vendor | string | Filter by the origin or source of the product. Learn more about vendors and managing vendor information. | - vendor:Snowdevil- vendor:Snowdevil OR vendor:Icedevil |
||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
savedSearchId: ID - The ID of a saved search.
The searchโs query string is used as the query argument.
The list of products published to the publication.
ProductConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
sortKey: ProductSortKeys - Sort the underlying list using a key. If your query is slow or returns an error, then try specifying a sort key that matches the field used in the search.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| barcode | string | Filter by the product variant barcode field. |
- barcode:ABC-abc-1234 |
||
| bundles | boolean | Filter by a product bundle. A product bundle is a set of two or more related products, which are commonly offered at a discount. | - bundles:true |
||
| category_id | string | Filter by the product category ID (product.category.id). A product category is the category of a product from Shopify's Standard Product Taxonomy. |
- category_id:sg-4-17-2-17 |
||
| collection_id | id | Filter by the collection id field. |
- collection_id:108179161409 |
||
| combined_listing_role | string | Filter by the role of the product in a combined listing. | - parent- child- no_role |
- combined_listing_role:parent |
|
| created_at | time | Filter by the date and time when the product was created. | - created_at:>'2020-10-21T23:39:20Z'- created_at:<now- created_at:<='2024' |
||
| delivery_profile_id | id | Filter by the delivery profile id field. |
- delivery_profile_id:108179161409 |
||
| error_feedback | string | Filter by products with publishing errors. | |||
| gift_card | boolean | Filter by the product isGiftCard field. |
- gift_card:true |
||
| handle | string | Filter by a comma-separated list of product handles. | - handle:the-minimal-snowboard |
||
| has_only_composites | boolean | Filter by products that have only composite variants. | - has_only_composites:true |
||
| has_only_default_variant | boolean | Filter by products that have only a default variant. A default variant is the only variant if no other variants are specified. | - has_only_default_variant:true |
||
| has_variant_with_components | boolean | Filter by products that have variants with associated components. | - has_variant_with_components:true |
||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| inventory_total | integer | Filter by inventory count. | - inventory_total:0- inventory_total:>150- inventory_total:>=200 |
||
| is_price_reduced | boolean | Filter by products that have a reduced price. For more information, refer to the CollectionRule object. |
- is_price_reduced:true |
||
| metafields.{namespace}.{key} | mixed | Filters resources by metafield value. Format: metafields.{namespace}.{key}:{value}. Learn more about querying by metafield value. |
- metafields.custom.on_sale:true- metafields.product.material:"gid://shopify/Metaobject/43458085" |
||
| out_of_stock_somewhere | boolean | Filter by products that are out of stock in at least one location. | - out_of_stock_somewhere:true |
||
| price | bigdecimal | Filter by the product variant price field. |
- price:100.57 |
||
| product_configuration_owner | string | Filter by the app id field. |
- product_configuration_owner:10001 |
||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| product_type | string | Filter by a comma-separated list of product types. | - product_type:snowboard |
||
| publication_ids | string | Filter by a comma-separated list of publication IDs that are associated with the product. | - publication_ids:184111530305,184111694145 |
||
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_at | time | Filter by the date and time when the product was published to the online store and other sales channels. | - published_at:>2020-10-21T23:39:20Z- published_at:<now- published_at:<=2024 |
||
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using a channel ID, channel handle, channel app ID (Channel.app.id), or app handle with suffixes: - {id_or_handle}-published: Returns resources published to the specified channel. - {id_or_handle}-visible: Same as {id_or_handle}-published (kept for backwards compatibility). - {id_or_handle}-intended: Returns resources added to the channel but not yet published. - {id_or_handle}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_id_or_handle}-published- * {channel_id_or_handle}-visible- * {channel_id_or_handle}-intended- * {channel_id_or_handle}-hidden- * {channel_app_id_or_handle}-published- * {channel_app_id_or_handle}-visible- * {channel_app_id_or_handle}-intended- * {channel_app_id_or_handle}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:my-channel-handle-published- published_status:unavailable |
|
| sku | string | Filter by the product variant sku field. Learn more about SKUs. |
- sku:XYZ-12345 |
||
| status | string | Filter by a comma-separated list of statuses. You can use statuses to manage inventory. Shopify only displays products with an ACTIVE status in online stores, sales channels, and apps. |
- active- archived- draft |
active |
- status:active,draft |
| tag | string | Filter objects by the tag field. |
- tag:my_tag |
||
| tag_not | string | Filter by objects that donโt have the specified tag. | - tag_not:my_tag |
||
| title | string | Filter by the product title field. |
- title:The Minimal Snowboard |
||
| tracks_inventory | boolean | Filter by products that have inventory tracking enabled. | - tracks_inventory:true |
||
| updated_at | time | Filter by the date and time when the product was last updated. | - updated_at:>'2020-10-21T23:39:20Z'- updated_at:<now- updated_at:<='2024' |
||
| variant_id | id | Filter by the product variant id field. |
- variant_id:45779434701121 |
||
| variant_title | string | Filter by the product variant title field. |
- variant_title:'Special ski wax' |
||
| vendor | string | Filter by the origin or source of the product. Learn more about vendors and managing vendor information. | - vendor:Snowdevil- vendor:Snowdevil OR vendor:Icedevil |
||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
savedSearchId: ID - The ID of a saved search.
The searchโs query string is used as the query argument.
dataSharingStateThe current data sharing state of the pixel.
collectionscollections on ShopList of the shop's collections.
CollectionConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
sortKey: CollectionSortKeys - Sort the underlying list using a key. If your query is slow or returns an error, then try specifying a sort key that matches the field used in the search.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| collection_type | string | - custom- smart |
|||
| handle | string | ||||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| product_id | id | Filter by collections containing a product by its ID. | |||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_at | time | Filter by the date and time when the collection was published to the Online Store. | |||
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using the channel app ID (Channel.app.id) with suffixes: - {channel_app_id}-published: Returns resources published to the specified channel. - {channel_app_id}-visible: Same as {channel_app_id}-published (kept for backwards compatibility). - {channel_app_id}-intended: Returns resources added to the channel but not yet published. - {channel_app_id}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_app_id}-published- * {channel_app_id}-visible- * {channel_app_id}-intended- * {channel_app_id}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:unavailable |
|
| title | string | ||||
| updated_at | time | ||||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
savedSearchId: ID - The ID of a saved search.
The searchโs query string is used as the query argument.
List of the shop's collections.
CollectionConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
sortKey: CollectionSortKeys - Sort the underlying list using a key. If your query is slow or returns an error, then try specifying a sort key that matches the field used in the search.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| collection_type | string | - custom- smart |
|||
| handle | string | ||||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| product_id | id | Filter by collections containing a product by its ID. | |||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_at | time | Filter by the date and time when the collection was published to the Online Store. | |||
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using a channel ID, channel handle, channel app ID (Channel.app.id), or app handle with suffixes: - {id_or_handle}-published: Returns resources published to the specified channel. - {id_or_handle}-visible: Same as {id_or_handle}-published (kept for backwards compatibility). - {id_or_handle}-intended: Returns resources added to the channel but not yet published. - {id_or_handle}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_id_or_handle}-published- * {channel_id_or_handle}-visible- * {channel_id_or_handle}-intended- * {channel_id_or_handle}-hidden- * {channel_app_id_or_handle}-published- * {channel_app_id_or_handle}-visible- * {channel_app_id_or_handle}-intended- * {channel_app_id_or_handle}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:my-channel-handle-published- published_status:unavailable |
|
| title | string | ||||
| updated_at | time | ||||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
savedSearchId: ID - The ID of a saved search.
The searchโs query string is used as the query argument.
productVariantsproductVariants on ShopList of the shop's product variants.
ProductVariantConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
sortKey: ProductVariantSortKeys - Sort the underlying list using a key. If your query is slow or returns an error, then try specifying a sort key that matches the field used in the search.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| barcode | string | Filter by the product variant barcode field. |
- barcode:ABC-abc-123 |
||
| collection | string | Filter by the ID of the collection that the product variant belongs to. | - collection:465903092033 |
||
| delivery_profile_id | id | Filter by the product variant delivery profile ID (ProductVariant.deliveryProfile.id). |
- delivery_profile_id:108179161409 |
||
| exclude_composite | boolean | Filter by product variants that aren't composites. | - exclude_composite:true |
||
| exclude_variants_with_components | boolean | Filter by whether there are components that are associated with the product variants in a bundle. | - exclude_variants_with_components:true |
||
| gift_card | boolean | Filter by the product isGiftCard field. |
- gift_card:true |
||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| inventory_quantity | integer | Filter by an aggregate of inventory across all locations where the product variant is stocked. | - inventory_quantity:10 |
||
| location_id | id | Filter by the location ID for the product variant. | - location_id:88511152449 |
||
| managed | boolean | Filter by whether there is fulfillment service tracking associated with the product variants. | - managed:true |
||
| managed_by | string | Filter by the fulfillment service that tracks the number of items in stock for the product variant. | - managed_by:shopify |
||
| option1 | string | Filter by a custom property that a shop owner uses to define product variants. | - option1:small |
||
| option2 | string | Filter by a custom property that a shop owner uses to define product variants. | - option2:medium |
||
| option3 | string | Filter by a custom property that a shop owner uses to define product variants. | - option3:large |
||
| product_id | id | Filter by the product id field. |
- product_id:8474977763649 |
||
| product_ids | string | Filter by a comma-separated list of product IDs. | - product_ids:8474977763649,8474977796417 |
||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| product_status | string | Filter by a comma-separated list of product statuses. | - product_status:ACTIVE,DRAFT |
||
| product_type | string | Filter by the product type that's associated with the product variants. | - product_type:snowboard |
||
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using the channel app ID (Channel.app.id) with suffixes: - {channel_app_id}-published: Returns resources published to the specified channel. - {channel_app_id}-visible: Same as {channel_app_id}-published (kept for backwards compatibility). - {channel_app_id}-intended: Returns resources added to the channel but not yet published. - {channel_app_id}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_app_id}-published- * {channel_app_id}-visible- * {channel_app_id}-intended- * {channel_app_id}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:unavailable |
|
| requires_components | boolean | Filter by whether the product variant can only be purchased with components. Learn more. | - requires_components:true |
||
| sku | string | Filter by the product variant sku field. Learn more about SKUs. |
- sku:XYZ-12345 |
||
| tag | string | Filter objects by the tag field. |
- tag:my_tag |
||
| tag_not | string | Filter by objects that donโt have the specified tag. | - tag_not:my_tag |
||
| taxable | boolean | Filter by the product variant taxable field. |
- taxable:false |
||
| title | string | Filter by the product variant title field. |
- title:ice |
||
| updated_at | time | Filter by date and time when the product variant was updated. | - updated_at:>2020-10-21T23:39:20Z- updated_at:<now- updated_at:<=2024 |
||
| vendor | string | Filter by the origin or source of the product variant. Learn more about vendors and managing vendor information. | - vendor:Snowdevil- vendor:Snowdevil OR vendor:Icedevil |
||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
List of the shop's product variants.
ProductVariantConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
sortKey: ProductVariantSortKeys - Sort the underlying list using a key. If your query is slow or returns an error, then try specifying a sort key that matches the field used in the search.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| barcode | string | Filter by the product variant barcode field. |
- barcode:ABC-abc-123 |
||
| collection | string | Filter by the ID of the collection that the product variant belongs to. | - collection:465903092033 |
||
| delivery_profile_id | id | Filter by the product variant delivery profile ID (ProductVariant.deliveryProfile.id). |
- delivery_profile_id:108179161409 |
||
| exclude_composite | boolean | Filter by product variants that aren't composites. | - exclude_composite:true |
||
| exclude_variants_with_components | boolean | Filter by whether there are components that are associated with the product variants in a bundle. | - exclude_variants_with_components:true |
||
| gift_card | boolean | Filter by the product isGiftCard field. |
- gift_card:true |
||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| inventory_quantity | integer | Filter by an aggregate of inventory across all locations where the product variant is stocked. | - inventory_quantity:10 |
||
| location_id | id | Filter by the location ID for the product variant. | - location_id:88511152449 |
||
| managed | boolean | Filter by whether there is fulfillment service tracking associated with the product variants. | - managed:true |
||
| managed_by | string | Filter by the fulfillment service that tracks the number of items in stock for the product variant. | - managed_by:shopify |
||
| option1 | string | Filter by a custom property that a shop owner uses to define product variants. | - option1:small |
||
| option2 | string | Filter by a custom property that a shop owner uses to define product variants. | - option2:medium |
||
| option3 | string | Filter by a custom property that a shop owner uses to define product variants. | - option3:large |
||
| product_id | id | Filter by the product id field. |
- product_id:8474977763649 |
||
| product_ids | string | Filter by a comma-separated list of product IDs. | - product_ids:8474977763649,8474977796417 |
||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| product_status | string | Filter by a comma-separated list of product statuses. | - product_status:ACTIVE,DRAFT |
||
| product_type | string | Filter by the product type that's associated with the product variants. | - product_type:snowboard |
||
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using a channel ID, channel handle, channel app ID (Channel.app.id), or app handle with suffixes: - {id_or_handle}-published: Returns resources published to the specified channel. - {id_or_handle}-visible: Same as {id_or_handle}-published (kept for backwards compatibility). - {id_or_handle}-intended: Returns resources added to the channel but not yet published. - {id_or_handle}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_id_or_handle}-published- * {channel_id_or_handle}-visible- * {channel_id_or_handle}-intended- * {channel_id_or_handle}-hidden- * {channel_app_id_or_handle}-published- * {channel_app_id_or_handle}-visible- * {channel_app_id_or_handle}-intended- * {channel_app_id_or_handle}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:my-channel-handle-published- published_status:unavailable |
|
| requires_components | boolean | Filter by whether the product variant can only be purchased with components. Learn more. | - requires_components:true |
||
| sku | string | Filter by the product variant sku field. Learn more about SKUs. |
- sku:XYZ-12345 |
||
| tag | string | Filter objects by the tag field. |
- tag:my_tag |
||
| tag_not | string | Filter by objects that donโt have the specified tag. | - tag_not:my_tag |
||
| taxable | boolean | Filter by the product variant taxable field. |
- taxable:false |
||
| title | string | Filter by the product variant title field. |
- title:ice |
||
| updated_at | time | Filter by date and time when the product variant was updated. | - updated_at:>2020-10-21T23:39:20Z- updated_at:<now- updated_at:<=2024 |
||
| vendor | string | Filter by the origin or source of the product variant. Learn more about vendors and managing vendor information. | - vendor:Snowdevil- vendor:Snowdevil OR vendor:Icedevil |
||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
productsproducts on ShopList of the shop's products.
ProductConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
sortKey: ProductSortKeys - Sort the underlying list using a key. If your query is slow or returns an error, then try specifying a sort key that matches the field used in the search.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| barcode | string | Filter by the product variant barcode field. |
- barcode:ABC-abc-1234 |
||
| bundles | boolean | Filter by a product bundle. A product bundle is a set of two or more related products, which are commonly offered at a discount. | - bundles:true |
||
| category_id | string | Filter by the product category ID (product.category.id). A product category is the category of a product from Shopify's Standard Product Taxonomy. |
- category_id:sg-4-17-2-17 |
||
| collection_id | id | Filter by the collection id field. |
- collection_id:108179161409 |
||
| combined_listing_role | string | Filter by the role of the product in a combined listing. | - parent- child- no_role |
- combined_listing_role:parent |
|
| created_at | time | Filter by the date and time when the product was created. | - created_at:>'2020-10-21T23:39:20Z'- created_at:<now- created_at:<='2024' |
||
| delivery_profile_id | id | Filter by the delivery profile id field. |
- delivery_profile_id:108179161409 |
||
| error_feedback | string | Filter by products with publishing errors. | |||
| gift_card | boolean | Filter by the product isGiftCard field. |
- gift_card:true |
||
| handle | string | Filter by a comma-separated list of product handles. | - handle:the-minimal-snowboard |
||
| has_only_composites | boolean | Filter by products that have only composite variants. | - has_only_composites:true |
||
| has_only_default_variant | boolean | Filter by products that have only a default variant. A default variant is the only variant if no other variants are specified. | - has_only_default_variant:true |
||
| has_variant_with_components | boolean | Filter by products that have variants with associated components. | - has_variant_with_components:true |
||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| inventory_total | integer | Filter by inventory count. | - inventory_total:0- inventory_total:>150- inventory_total:>=200 |
||
| is_price_reduced | boolean | Filter by products that have a reduced price. For more information, refer to the CollectionRule object. |
- is_price_reduced:true |
||
| metafields.{namespace}.{key} | mixed | Filters resources by metafield value. Format: metafields.{namespace}.{key}:{value}. Learn more about querying by metafield value. |
- metafields.custom.on_sale:true- metafields.product.material:"gid://shopify/Metaobject/43458085" |
||
| out_of_stock_somewhere | boolean | Filter by products that are out of stock in at least one location. | - out_of_stock_somewhere:true |
||
| price | bigdecimal | Filter by the product variant price field. |
- price:100.57 |
||
| product_configuration_owner | string | Filter by the app id field. |
- product_configuration_owner:10001 |
||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| product_type | string | Filter by a comma-separated list of product types. | - product_type:snowboard |
||
| publication_ids | string | Filter by a comma-separated list of publication IDs that are associated with the product. | - publication_ids:184111530305,184111694145 |
||
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_at | time | Filter by the date and time when the product was published to the online store and other sales channels. | - published_at:>2020-10-21T23:39:20Z- published_at:<now- published_at:<=2024 |
||
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using the channel app ID (Channel.app.id) with suffixes: - {channel_app_id}-published: Returns resources published to the specified channel. - {channel_app_id}-visible: Same as {channel_app_id}-published (kept for backwards compatibility). - {channel_app_id}-intended: Returns resources added to the channel but not yet published. - {channel_app_id}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_app_id}-published- * {channel_app_id}-visible- * {channel_app_id}-intended- * {channel_app_id}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:unavailable |
|
| sku | string | Filter by the product variant sku field. Learn more about SKUs. |
- sku:XYZ-12345 |
||
| status | string | Filter by a comma-separated list of statuses. You can use statuses to manage inventory. Shopify only displays products with an ACTIVE status in online stores, sales channels, and apps. |
- active- archived- draft |
active |
- status:active,draft |
| tag | string | Filter objects by the tag field. |
- tag:my_tag |
||
| tag_not | string | Filter by objects that donโt have the specified tag. | - tag_not:my_tag |
||
| title | string | Filter by the product title field. |
- title:The Minimal Snowboard |
||
| tracks_inventory | boolean | Filter by products that have inventory tracking enabled. | - tracks_inventory:true |
||
| updated_at | time | Filter by the date and time when the product was last updated. | - updated_at:>'2020-10-21T23:39:20Z'- updated_at:<now- updated_at:<='2024' |
||
| variant_id | id | Filter by the product variant id field. |
- variant_id:45779434701121 |
||
| variant_title | string | Filter by the product variant title field. |
- variant_title:'Special ski wax' |
||
| vendor | string | Filter by the origin or source of the product. Learn more about vendors and managing vendor information. | - vendor:Snowdevil- vendor:Snowdevil OR vendor:Icedevil |
||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
savedSearchId: ID - The ID of a saved search.
The searchโs query string is used as the query argument.
List of the shop's products.
ProductConnection!first: Int - The first n elements from the paginated list.
after: String - The elements that come after the specified cursor.
last: Int - The last n elements from the paginated list.
before: String - The elements that come before the specified cursor.
reverse: Boolean - Reverse the order of the underlying list.
sortKey: ProductSortKeys - Sort the underlying list using a key. If your query is slow or returns an error, then try specifying a sort key that matches the field used in the search.
query: String - A filter made up of terms, connectives, modifiers, and comparators.
| name | type | description | acceptable_values | default_value | example_use |
|---|---|---|---|---|---|
| default | string | Filter by a case-insensitive search of multiple fields in a document. | - query=Bob Norman- query=title:green hoodie |
||
| barcode | string | Filter by the product variant barcode field. |
- barcode:ABC-abc-1234 |
||
| bundles | boolean | Filter by a product bundle. A product bundle is a set of two or more related products, which are commonly offered at a discount. | - bundles:true |
||
| category_id | string | Filter by the product category ID (product.category.id). A product category is the category of a product from Shopify's Standard Product Taxonomy. |
- category_id:sg-4-17-2-17 |
||
| collection_id | id | Filter by the collection id field. |
- collection_id:108179161409 |
||
| combined_listing_role | string | Filter by the role of the product in a combined listing. | - parent- child- no_role |
- combined_listing_role:parent |
|
| created_at | time | Filter by the date and time when the product was created. | - created_at:>'2020-10-21T23:39:20Z'- created_at:<now- created_at:<='2024' |
||
| delivery_profile_id | id | Filter by the delivery profile id field. |
- delivery_profile_id:108179161409 |
||
| error_feedback | string | Filter by products with publishing errors. | |||
| gift_card | boolean | Filter by the product isGiftCard field. |
- gift_card:true |
||
| handle | string | Filter by a comma-separated list of product handles. | - handle:the-minimal-snowboard |
||
| has_only_composites | boolean | Filter by products that have only composite variants. | - has_only_composites:true |
||
| has_only_default_variant | boolean | Filter by products that have only a default variant. A default variant is the only variant if no other variants are specified. | - has_only_default_variant:true |
||
| has_variant_with_components | boolean | Filter by products that have variants with associated components. | - has_variant_with_components:true |
||
| id | id | Filter by id range. |
- id:1234- id:>=1234- id:<=1234 |
||
| inventory_total | integer | Filter by inventory count. | - inventory_total:0- inventory_total:>150- inventory_total:>=200 |
||
| is_price_reduced | boolean | Filter by products that have a reduced price. For more information, refer to the CollectionRule object. |
- is_price_reduced:true |
||
| metafields.{namespace}.{key} | mixed | Filters resources by metafield value. Format: metafields.{namespace}.{key}:{value}. Learn more about querying by metafield value. |
- metafields.custom.on_sale:true- metafields.product.material:"gid://shopify/Metaobject/43458085" |
||
| out_of_stock_somewhere | boolean | Filter by products that are out of stock in at least one location. | - out_of_stock_somewhere:true |
||
| price | bigdecimal | Filter by the product variant price field. |
- price:100.57 |
||
| product_configuration_owner | string | Filter by the app id field. |
- product_configuration_owner:10001 |
||
| product_publication_status | string | Filter by channel approval process status of the resource on a channel, such as the online store. The value is a composite of the channel app ID (Channel.app.id) and one of the valid values. For simple visibility checks, use published_status instead. |
- * {channel_app_id}-approved- * {channel_app_id}-rejected- * {channel_app_id}-needs_action- * {channel_app_id}-awaiting_review- * {channel_app_id}-published- * {channel_app_id}-demoted- * {channel_app_id}-scheduled- * {channel_app_id}-provisionally_published |
- product_publication_status:189769876-approved |
|
| product_type | string | Filter by a comma-separated list of product types. | - product_type:snowboard |
||
| publication_ids | string | Filter by a comma-separated list of publication IDs that are associated with the product. | - publication_ids:184111530305,184111694145 |
||
| publishable_status | string | Deprecated: This parameter is deprecated as of 2025-12 and will be removed in a future API version. Use published_status for visibility checks. Filter by the publishable status of the resource on a channel. The value is a composite of the channel app ID (Channel.app.id) and one of the valid status values. |
- * {channel_app_id}-unset- * {channel_app_id}-pending- * {channel_app_id}-approved- * {channel_app_id}-not_approved |
- publishable_status:580111-unset- publishable_status:580111-pending |
|
| published_at | time | Filter by the date and time when the product was published to the online store and other sales channels. | - published_at:>2020-10-21T23:39:20Z- published_at:<now- published_at:<=2024 |
||
| published_status | string | Filter resources by their visibility and publication state on a channel. Online store channel filtering: - online_store_channel: Returns all resources in the online store channel, regardless of publication status. - published/visible: Returns resources that are published to the online store. - unpublished: Returns resources that are not published to the online store. Channel-specific filtering using a channel ID, channel handle, channel app ID (Channel.app.id), or app handle with suffixes: - {id_or_handle}-published: Returns resources published to the specified channel. - {id_or_handle}-visible: Same as {id_or_handle}-published (kept for backwards compatibility). - {id_or_handle}-intended: Returns resources added to the channel but not yet published. - {id_or_handle}-hidden: Returns resources not added to the channel or not published. Other: - unavailable: Returns resources not published to any channel. |
- online_store_channel- published- visible- unpublished- * {channel_id_or_handle}-published- * {channel_id_or_handle}-visible- * {channel_id_or_handle}-intended- * {channel_id_or_handle}-hidden- * {channel_app_id_or_handle}-published- * {channel_app_id_or_handle}-visible- * {channel_app_id_or_handle}-intended- * {channel_app_id_or_handle}-hidden- unavailable |
- published_status:online_store_channel- published_status:published- published_status:580111-published- published_status:580111-hidden- published_status:my-channel-handle-published- published_status:unavailable |
|
| sku | string | Filter by the product variant sku field. Learn more about SKUs. |
- sku:XYZ-12345 |
||
| status | string | Filter by a comma-separated list of statuses. You can use statuses to manage inventory. Shopify only displays products with an ACTIVE status in online stores, sales channels, and apps. |
- active- archived- draft |
active |
- status:active,draft |
| tag | string | Filter objects by the tag field. |
- tag:my_tag |
||
| tag_not | string | Filter by objects that donโt have the specified tag. | - tag_not:my_tag |
||
| title | string | Filter by the product title field. |
- title:The Minimal Snowboard |
||
| tracks_inventory | boolean | Filter by products that have inventory tracking enabled. | - tracks_inventory:true |
||
| updated_at | time | Filter by the date and time when the product was last updated. | - updated_at:>'2020-10-21T23:39:20Z'- updated_at:<now- updated_at:<='2024' |
||
| variant_id | id | Filter by the product variant id field. |
- variant_id:45779434701121 |
||
| variant_title | string | Filter by the product variant title field. |
- variant_title:'Special ski wax' |
||
| vendor | string | Filter by the origin or source of the product. Learn more about vendors and managing vendor information. | - vendor:Snowdevil- vendor:Snowdevil OR vendor:Icedevil |
||
| You can apply one or more filters to a query. Learn more about Shopify API search syntax. |
savedSearchId: ID - The ID of a saved search.
The searchโs query string is used as the query argument.
MANAGED_MARKETS_B2B_DOMESTIC_TAXES_ADJUSTMENT_DEBITMANAGED_MARKETS_B2B_DOMESTIC_TAXES_ADJUSTMENT_DEBIT_REVERSALdataSharingStateThe current data sharing state of the pixel.