Skip to main content
Anchor to HasPublishedTranslations

HasPublishedTranslations

interface

Published translations associated with the resource.

•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.



Was this section helpful?

Anchor to Types implemented inTypes implemented in

Anchor to ArticleArticle
•OBJECT

An article that contains content, author information, and metadata. Articles belong to a Blog and can include HTML-formatted body text, summary text, and an associated image. Merchants publish articles to share content, drive traffic, and engage customers.

Articles can be organized with tags and published immediately or scheduled for future publication using the publishedAt timestamp. The API manages comments on articles when the blog's comment policy enables them.

•ArticleAuthor

The name of the author of the article.

•Blog!
non-null

The blog containing the article.

•HTML!
non-null

The text of the article's body, complete with HTML markup.

•CommentConnection!
non-null

List of the article's comments.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
created_attimeFilter by the date and time when the comment was
created.- created_at:>'2020-10-21T23:39:20Z'
-
created_at:<now
- created_at:<=2024
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
published_attimeFilter by the date and time when the comment was
published.- published_at:>'2020-10-21T23:39:20Z'
-
published_at:<now
- published_at:<=2024
published_statusstringFilter by published status- any
-
published
- unpublished
- published_status:any
-
published_status:published
- published_status:unpublished
statusstring
updated_attimeFilter by the date and time when the comment was last
updated.- updated_at:>'2020-10-21T23:39:20Z'
-
updated_at:<now
- updated_at:<=2024
You can apply one or more filters to a query. Learn more about [Shopify API
search syntax](https://shopify.dev/api/usage/search-syntax).
•Boolean
Default:false

Reverse the order of the underlying list.


•Count

Count of comments. Limited to a maximum of 10000 by default.

Arguments

•Int
Default:10000

The upper bound on count value before returning a result. Use null to have no limit.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
created_attimeFilter by the date and time when the comment was
created.- created_at:>'2020-10-21T23:39:20Z'
-
created_at:<now
- created_at:<=2024
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
published_attimeFilter by the date and time when the comment was
published.- published_at:>'2020-10-21T23:39:20Z'
-
published_at:<now
- published_at:<=2024
published_statusstringFilter by published status- any
-
published
- unpublished
- published_status:any
-
published_status:published
- published_status:unpublished
statusstring
updated_attimeFilter by the date and time when the comment was last
updated.- updated_at:>'2020-10-21T23:39:20Z'
-
updated_at:<now
- updated_at:<=2024
You can apply one or more filters to a query. Learn more about [Shopify API
search syntax](https://shopify.dev/api/usage/search-syntax).

•DateTime!
non-null

The date and time (ISO 8601 format) when the article was created.

•String!
non-null

A default cursor that returns the single next record, sorted ascending by ID.

•EventConnection!
non-null

The paginated list of events associated with the host subject.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators. | comments | boolean | Whether or not to include comment-events in your search, passing false will exclude comment-events, any other value will include comment-events. | | | - false
- true | | created_at | time | Filter by the date and time when the event occurred. Event data is retained for 1 year. | | | - created_at:>2025-10-21
- created_at:<now | | id | id | Filter by id range. | | | - id:1234
- id:>=1234
- id:<=1234 | | subject_type | string | The resource type affected by this event. See EventSubjectType for possible values. | | | - PRODUCT_VARIANT
- PRODUCT
- COLLECTION | You can apply one or more filters to a query. Learn more about Shopify API search syntax.

•string

The action that occured.

Example:

  • action:create
•Boolean
Default:false

Reverse the order of the underlying list.

•EventSortKeys
Default:ID

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.


•String!
non-null

A unique, human-friendly string for the article that's automatically generated from the article's title. The handle is used in the article's URL.

•ID!
non-null

A globally-unique ID.

•Image

The image associated with the article.

•Boolean!
non-null

Whether or not the article is visible.

•Metafield

A custom field, including its namespace and key, that's associated with a Shopify resource for the purposes of adding and storing additional information.

Arguments

•String!
required

The key for the metafield.

•String

The container the metafield belongs to. If omitted, the app-reserved namespace will be used.


•MetafieldConnection!
non-null

A list of custom fields that a merchant associates with a Shopify resource.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•[String!]

List of keys of metafields in the format namespace.key, will be returned in the same format.

•Int

The last n elements from the paginated list.

•String

The metafield namespace to filter by. If omitted, all metafields are returned.

•Boolean
Default:false

Reverse the order of the underlying list.


•DateTime

The date and time (ISO 8601 format) when the article became or will become visible. Returns null when the article isn't visible.

•HTML

A summary of the article, which can include HTML markup. The summary is used by the online store theme to display the article on other pages, such as the home page or the main blog page.

•[String!]!
non-null

A comma-separated list of tags. Tags are additional short descriptors formatted as a string of comma-separated values.

•String

The name of the template an article is using if it's using an alternate template. If an article is using the default article.liquid template, then the value returned is null.

•String!
non-null

The title of the article.

•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.


•DateTime

The date and time (ISO 8601 format) when the article was last updated.

Anchor to metafieldDefinitionsmetafieldDefinitions
•MetafieldDefinitionConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

Filter metafield definitions by namespace.

•MetafieldDefinitionPinnedStatus
Default:ANY

Filter by the definition's pinned status.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
created_attimeFilter by the date and time when the metafield
definition was created.- created_at:>2020-10-21T23:39:20Z
-
created_at:<now
- created_at:<=2024
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
keystringFilter by the metafield definition key
field.- key:some-key
namespacestringFilter by the metafield definition namespace
field.- namespace:some-namespace
owner_typestringFilter by the metafield definition ownerType
field.- owner_type:PRODUCT
typestringFilter by the metafield definition type
field.- type:single_line_text_field
updated_attimeFilter by the date and time when the metafield
definition was last updated.- updated_at:>2020-10-21T23:39:20Z
  • updated_at:<now
    - updated_at:<=2024 | You can apply one or more filters to a query. Learn more about Shopify API search syntax.
•Boolean
Default:false

Reverse the order of the underlying list.

•MetafieldDefinitionSortKeys
Default:ID

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.


•OBJECT

A blog for publishing articles in the online store. Stores can have multiple blogs to organize content by topic or purpose.

Each blog contains articles with their associated comments, tags, and metadata. The comment policy controls whether readers can post comments and whether moderation is required. Blogs use customizable URL handles and can apply alternate templates for specialized layouts.

•ArticleConnection!
non-null

List of the blog's articles.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.


•Count

Count of articles. Limited to a maximum of 10000 by default.

Arguments

•Int
Default:10000

The upper bound on count value before returning a result. Use null to have no limit.


•CommentPolicy!
non-null

Indicates whether readers can post comments to the blog and if comments are moderated or not.

•DateTime!
non-null

The date and time when the blog was created.

•EventConnection!
non-null

The paginated list of events associated with the host subject.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators. | comments | boolean | Whether or not to include comment-events in your search, passing false will exclude comment-events, any other value will include comment-events. | | | - false
- true | | created_at | time | Filter by the date and time when the event occurred. Event data is retained for 1 year. | | | - created_at:>2025-10-21
- created_at:<now | | id | id | Filter by id range. | | | - id:1234
- id:>=1234
- id:<=1234 | | subject_type | string | The resource type affected by this event. See EventSubjectType for possible values. | | | - PRODUCT_VARIANT
- PRODUCT
- COLLECTION | You can apply one or more filters to a query. Learn more about Shopify API search syntax.

•string

The action that occured.

Example:

  • action:create
•Boolean
Default:false

Reverse the order of the underlying list.

•EventSortKeys
Default:ID

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.


•BlogFeed

FeedBurner provider details. Any blogs that aren't already integrated with FeedBurner can't use the service.

•String!
non-null

A unique, human-friendly string for the blog. If no handle is specified, a handle will be generated automatically from the blog title. The handle is customizable and is used by the Liquid templating language to refer to the blog.

•ID!
non-null

A globally-unique ID.

•Metafield

A custom field, including its namespace and key, that's associated with a Shopify resource for the purposes of adding and storing additional information.

Arguments

•String!
required

The key for the metafield.

•String

The container the metafield belongs to. If omitted, the app-reserved namespace will be used.


•MetafieldConnection!
non-null

A list of custom fields that a merchant associates with a Shopify resource.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•[String!]

List of keys of metafields in the format namespace.key, will be returned in the same format.

•Int

The last n elements from the paginated list.

•String

The metafield namespace to filter by. If omitted, all metafields are returned.

•Boolean
Default:false

Reverse the order of the underlying list.


•[String!]!
non-null

A list of tags associated with the 200 most recent blog articles.

•String

The name of the template a blog is using if it's using an alternate template. Returns null if a blog is using the default blog.liquid template.

•String!
non-null

The title of the blog.

•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.


•DateTime

The date and time when the blog was update.

Anchor to metafieldDefinitionsmetafieldDefinitions
•MetafieldDefinitionConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

Filter metafield definitions by namespace.

•MetafieldDefinitionPinnedStatus
Default:ANY

Filter by the definition's pinned status.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
created_attimeFilter by the date and time when the metafield
definition was created.- created_at:>2020-10-21T23:39:20Z
-
created_at:<now
- created_at:<=2024
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
keystringFilter by the metafield definition key
field.- key:some-key
namespacestringFilter by the metafield definition namespace
field.- namespace:some-namespace
owner_typestringFilter by the metafield definition ownerType
field.- owner_type:PRODUCT
typestringFilter by the metafield definition type
field.- type:single_line_text_field
updated_attimeFilter by the date and time when the metafield
definition was last updated.- updated_at:>2020-10-21T23:39:20Z
  • updated_at:<now
    - updated_at:<=2024 | You can apply one or more filters to a query. Learn more about Shopify API search syntax.
•Boolean
Default:false

Reverse the order of the underlying list.

•MetafieldDefinitionSortKeys
Default:ID

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.


•OBJECT

The Collection object represents a group of products that merchants can organize to make their stores easier to browse and help customers find related products. Collections serve as the primary way to categorize and display products across online stores, sales channels, and marketing campaigns.

There are two types of collections:

The Collection object provides information to:

  • Organize products by category, season, or promotion.
  • Automate product grouping using rules (for example, by tag, type, or price).
  • Configure product sorting and display order (for example, alphabetical, best-selling, price, or manual).
  • Manage collection visibility and publication across sales channels.
  • Add rich descriptions, images, and metadata to enhance discovery.

Note

Collections are unpublished by default. To make them available to customers, use the publishablePublish mutation after creation.


Collections can be displayed in a store with Shopify's theme system through Liquid templates and can be customized with template suffixes for unique layouts. They also support advanced features like translated content, resource feedback, and contextual publication for location-based catalogs.

Learn about using metafields with smart collections.

•CollectionOperations!
non-null

Collection duplicate operations involving this collection, either as a source (copying products from this collection to another) or a target (copying products to this collection from another).

Anchor to availablePublicationsCountavailablePublicationsCount
•Count

The number of publications that a resource is published to, without feedback errors.

•String!
non-null

A single-line, text-only description of the collection, stripped of any HTML tags and formatting that were included in the description.

Arguments

•Int

Truncates a string after the given length.


•HTML!
non-null

The description of the collection, including any HTML tags and formatting. This content is typically displayed to customers, such as on an online store, depending on the theme.

•EventConnection!
non-null

The paginated list of events associated with the host subject.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators. | comments | boolean | Whether or not to include comment-events in your search, passing false will exclude comment-events, any other value will include comment-events. | | | - false
- true | | created_at | time | Filter by the date and time when the event occurred. Event data is retained for 1 year. | | | - created_at:>2025-10-21
- created_at:<now | | id | id | Filter by id range. | | | - id:1234
- id:>=1234
- id:<=1234 | | subject_type | string | The resource type affected by this event. See EventSubjectType for possible values. | | | - PRODUCT_VARIANT
- PRODUCT
- COLLECTION | You can apply one or more filters to a query. Learn more about Shopify API search syntax.

•string

The action that occured.

Example:

  • action:create
•Boolean
Default:false

Reverse the order of the underlying list.

•EventSortKeys
Default:ID

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.


•ResourceFeedback

Information about the collection that's provided through resource feedback.

•String!
non-null

A unique string that identifies the collection. If a handle isn't specified when a collection is created, it's automatically generated from the collection's original title, and typically includes words from the title separated by hyphens. For example, a collection that was created with the title Summer Catalog 2022 might have the handle summer-catalog-2022.

If the title is changed, the handle doesn't automatically change.

The handle can be used in themes by the Liquid templating language to refer to the collection, but using the ID is preferred because it never changes.

•Boolean!
non-null

Whether the collection includes the specified product.

Arguments

•ID!
required

The ID of the product to check.


•ID!
non-null

A globally-unique ID.

•Image

The image associated with the collection.

Arguments

•CropRegion
Deprecated
•Int
Deprecated
•Int
Deprecated
•Int
DeprecatedDefault:1

•UnsignedInt64!
non-null

The ID of the corresponding resource in the REST Admin API.

•Metafield

A custom field, including its namespace and key, that's associated with a Shopify resource for the purposes of adding and storing additional information.

Arguments

•String!
required

The key for the metafield.

•String

The container the metafield belongs to. If omitted, the app-reserved namespace will be used.


•MetafieldConnection!
non-null

A list of custom fields that a merchant associates with a Shopify resource.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•[String!]

List of keys of metafields in the format namespace.key, will be returned in the same format.

•Int

The last n elements from the paginated list.

•String

The metafield namespace to filter by. If omitted, all metafields are returned.

•Boolean
Default:false

Reverse the order of the underlying list.


•ProductConnection!
non-null

The products that are included in the collection.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.

•ProductCollectionSortKeys
Default:COLLECTION_DEFAULT

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.


•Count

The number of products in the collection.

Anchor to publishedOnPublicationpublishedOnPublication
•Boolean!
non-null

Whether the resource is published to a specified publication.

Arguments

•ID!
required

The ID of the publication to check. For example, id: "gid://shopify/Publication/123".


Anchor to resourcePublicationsresourcePublications
•ResourcePublicationConnection!
non-null

The list of resources that are published to a publication.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:true

Whether to return only the resources that are currently published. If false, then also returns the resources that are scheduled to be published.

•Boolean
Default:false

Reverse the order of the underlying list.


Anchor to resourcePublicationsCountresourcePublicationsCount
•Count

The total number of publications that a resource is published to, including publications with feedback errors. To get a count that excludes publications with feedback errors, use availablePublicationsCount.

Arguments

•Boolean
Default:true

Include only the resource's publications that are published. If false, then return all the resource's publications including future publications.


Anchor to resourcePublicationsV2resourcePublicationsV2
•ResourcePublicationV2Connection!
non-null

The list of resources that are either published or staged to be published to a publication. By default, only publications to APP catalog types are returned. For Product and ProductVariant, use the catalogType argument to retrieve publications for other catalog types, such as COMPANY_LOCATION (B2B) or MARKET. Collection only supports publications to APP catalog types.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•CatalogType

Filter publications by catalog type. When not specified, defaults to APP. Has no effect on Collection, which only supports APP.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:true

Whether to return only the resources that are currently published. If false, then also returns the resources that are scheduled or staged to be published.

•Boolean
Default:false

Reverse the order of the underlying list.


•CollectionRuleSet

For a smart (automated) collection, specifies the rules that determine whether a product is included.

•SEO!
non-null

If the default SEO fields for page title and description have been modified, contains the modified information.

•CollectionSortOrder!
non-null

The order in which the products in the collection are displayed by default in the Shopify admin and in sales channels, such as an online store.

•String

The suffix of the Liquid template being used to show the collection in an online store. For example, if the value is custom, then the collection is using the collection.custom.liquid template. If the value is null, then the collection is using the default collection.liquid template.

•String!
non-null

The name of the collection. It's displayed in the Shopify admin and is typically displayed in sales channels, such as an online store.

•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.


Anchor to unpublishedPublicationsunpublishedPublications
•PublicationConnection!
non-null

The list of publications that the resource isn't published to.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.


•DateTime!
non-null

The date and time (ISO 8601 format) when the collection was last modified.

Anchor to metafieldDefinitionsmetafieldDefinitions
•MetafieldDefinitionConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

Filter metafield definitions by namespace.

•MetafieldDefinitionPinnedStatus
Default:ANY

Filter by the definition's pinned status.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
created_attimeFilter by the date and time when the metafield
definition was created.- created_at:>2020-10-21T23:39:20Z
-
created_at:<now
- created_at:<=2024
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
keystringFilter by the metafield definition key
field.- key:some-key
namespacestringFilter by the metafield definition namespace
field.- namespace:some-namespace
owner_typestringFilter by the metafield definition ownerType
field.- owner_type:PRODUCT
typestringFilter by the metafield definition type
field.- type:single_line_text_field
updated_attimeFilter by the date and time when the metafield
definition was last updated.- updated_at:>2020-10-21T23:39:20Z
  • updated_at:<now
    - updated_at:<=2024 | You can apply one or more filters to a query. Learn more about Shopify API search syntax.
•Boolean
Default:false

Reverse the order of the underlying list.

•MetafieldDefinitionSortKeys
Default:ID

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.


•Int!
non-nullDeprecated

Arguments

•Boolean
Default:true

Include only the resource's publications that are published. If false, then return all the resource's publications including future publications.


•CollectionPublicationConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:true

Whether or not to return only the collection publications that are published.

•Boolean
Default:false

Reverse the order of the underlying list.


•Boolean!
non-nullDeprecated

Arguments

•ID!
required

The ID of the channel to check.


Anchor to publishedOnCurrentChannelpublishedOnCurrentChannel
•Boolean!
non-nullDeprecated
Anchor to publishedOnCurrentPublicationpublishedOnCurrentPublication
•Boolean!
non-nullDeprecated
•StorefrontID!
non-nullDeprecated
•ChannelConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.


•OBJECT

A shop's banner settings.

•Boolean!
non-null

Indicates if the banner is auto managed.

•Boolean!
non-null

Indicates if the banner is enabled.

•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.


•OBJECT

Represents an image resource.

•String

A word or phrase to share the nature or contents of an image.

•Int

The original height of the image in pixels. Returns null if the image isn't hosted by Shopify.

•ID

A unique ID for the image.

•Metafield

A custom field, including its namespace and key, that's associated with a Shopify resource for the purposes of adding and storing additional information.

Arguments

•String!
required

The key for the metafield.

•String

The container the metafield belongs to. If omitted, the app-reserved namespace will be used.


•MetafieldConnection!
non-null

A list of custom fields that a merchant associates with a Shopify resource.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•[String!]

List of keys of metafields in the format namespace.key, will be returned in the same format.

•Int

The last n elements from the paginated list.

•String

The metafield namespace to filter by. If omitted, all metafields are returned.

•Boolean
Default:false

Reverse the order of the underlying list.


•String

The ThumbHash of the image.

Useful to display placeholder images while the original image is loading.

•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.


•URL!
non-null

The location of the image as a URL.

If no transform options are specified, then the original image will be preserved including any pre-applied transforms.

All transformation options are considered "best-effort". Any transformation that the original image type doesn't support will be ignored.

If you need multiple variations of the same image, then you can use GraphQL aliases.

Arguments

•ImageTransformInput

A set of options to transform the original image.


•Int

The original width of the image in pixels. Returns null if the image isn't hosted by Shopify.

•URL!
non-nullDeprecated
•URL!
non-nullDeprecated
•URL!
non-nullDeprecated

Arguments

•CropRegion

Crops the image according to the specified region.

•Int

Image height in pixels between 1 and 5760.

•Int

Image width in pixels between 1 and 5760.

Anchor to preferredContentTypepreferredContentType
•ImageContentType

Best effort conversion of image into content type (SVG -> PNG, Anything -> JPG, Anything -> WEBP are supported).

•Int
Default:1

Image size multiplier for high-resolution retina displays. Must be between 1 and 3.


•OBJECT

A link to direct users to.

•String!
non-null

A context-sensitive label for the link.

•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.


•URL!
non-null

The URL that the link visits.

•OBJECT

The MediaImage object represents an image hosted on Shopify's content delivery network (CDN). Shopify CDN is a content system that serves as the primary way to store, manage, and deliver visual content for products, variants, and other resources across the Shopify platform.

The MediaImage object provides information to:

  • Store and display product and variant images across online stores, admin interfaces, and mobile apps.
  • Retrieve visual branding elements, including logos, banners, favicons, and background images in checkout flows.
  • Retrieve signed URLs for secure, time-limited access to original image files.

Each MediaImage object provides both the processed image data (with automatic optimization and CDN delivery) and access to the original source file. The image processing is handled asynchronously, so images might not be immediately available after upload. The status field indicates when processing is complete and the image is ready for use.

The MediaImage object implements the Media interface alongside other media types, like videos and 3D models.

Learn about managing media for products, product variants, and asynchronous media management.

•String

A word or phrase to share the nature or contents of a media.

•DateTime!
non-null

The date and time (ISO 8601 format) when the file was created.

•[FileError!]!
non-null

Any errors that have occurred on the file.

•FileStatus!
non-null

The status of the file.

•ID!
non-null

A globally-unique ID.

•Image

The image for the media. Returns null until status is READY.

•MediaContentType!
non-null

The media content type.

•[MediaError!]!
non-null

Any errors which have occurred on the media.

•[MediaWarning!]!
non-null

The warnings attached to the media.

•String

The MIME type of the image.

•MediaImageOriginalSource

The original source of the image.

•MediaPreviewImage

The preview image for the media.

•MediaStatus!
non-null

Current status of the media.

•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.


•DateTime!
non-null

The date and time (ISO 8601 format) when the file was last updated.

•Metafield
Deprecated

Arguments

•String!
required

The key for the metafield.

•String

The container the metafield belongs to. If omitted, the app-reserved namespace will be used.


•MetafieldConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•[String!]

List of keys of metafields in the format namespace.key, will be returned in the same format.

•Int

The last n elements from the paginated list.

•String

The metafield namespace to filter by. If omitted, all metafields are returned.

•Boolean
Default:false

Reverse the order of the underlying list.


•OBJECT

Navigation menus that organize links into logical structures to guide customers through a store. Menus serve as the backbone of store navigation, making it easy for customers to find products, pages, and other content through organized hierarchical links.

For example, a merchant might create a main navigation menu with top-level categories like "Products," "About Us," and "Contact," where each category can contain nested menu items linking to specific collections, pages, or external resources.

Use the Menu object to:

  • Build and customize store navigation structures
  • Organize hierarchical menu systems with nested items
  • Work with default menus that can't be deleted
  • Access menu items for building navigation

Menus can be designated as default navigation elements (like main menu or footer), which can't be deleted and have restricted handle updates. The handle provides a unique identifier that themes can reference, while the items collection enables nested navigation structures.

Each menu contains menu items that can link to various resource types. This flexibility lets merchants create navigation experiences that guide customers through their store.

•String!
non-null

The menu's handle.

•ID!
non-null

A globally-unique ID.

•Boolean!
non-null

Whether the menu is a default. The handle for default menus can't be updated and default menus can't be deleted.

•[MenuItem!]!
non-null

A list of items on the menu sorted by position.

Arguments

•Int

The number of menu items to be returned.


•String!
non-null

The menu's title.

•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.


•OBJECT

Metafields enable you to attach additional information to a Shopify resource, such as a Product or a Collection. For more information about where you can attach metafields refer to HasMetafields. Some examples of the data that metafields enable you to store are specifications, size charts, downloadable documents, release dates, images, or part numbers. Metafields are identified by an owner resource, namespace, and key. and store a value along with type information for that value.

•String!
non-null

The data stored in the resource, represented as a digest.

•DateTime!
non-null

The date and time when the metafield was created.

•MetafieldDefinition

The metafield definition that the metafield belongs to, if any.

•ID!
non-null

A globally-unique ID.

•JSON!
non-null

The data stored in the metafield in JSON format.

•String!
non-null

The unique identifier for the metafield within its namespace.

•UnsignedInt64!
non-null

The ID of the corresponding resource in the REST Admin API.

•String!
non-null

The container for a group of metafields that the metafield is associated with.

•HasMetafields!
non-null

The resource that the metafield is attached to.

•MetafieldOwnerType!
non-null

The type of resource that the metafield is attached to.

•MetafieldReference

Returns a reference object if the metafield definition's type is a resource reference.

•MetafieldReferenceConnection

A list of reference objects if the metafield's type is a resource reference list.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.


•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.


•String!
non-null

The type of data that's stored in the metafield. Refer to the list of supported types.

•DateTime!
non-null

The date and time when the metafield was updated.

•String!
non-null

The data stored in the metafield. Always stored as a string, regardless of the metafield's type.

•String
Deprecated
•OBJECT

A theme for display on the storefront. Themes control the visual appearance and functionality of the online store through templates, stylesheets, and assets that determine how products, collections, and other content display to customers.

Each theme has a role that indicates its status. Main themes are live on the storefront, unpublished themes are inactive, demo themes require purchase before publishing, and development themes are temporary for previewing during development. The theme includes translations for multi-language support.

•DateTime!
non-null

The date and time when the theme was created.

•OnlineStoreThemeFileConnection

The files in the theme.

Arguments

•String

A cursor for use in pagination.

•[String!]

The filenames of the theme files. At most 50 filenames can be specified. Use '*' to match zero or more characters.

•Int
Default:50

Returns at most the first n files for this theme. Fewer than n files may be returned to stay within the payload size limit, or when the end of the list is reached. At most 2500 can be fetched at once.


•ID!
non-null

A globally-unique ID.

•String!
non-null

The name of the theme, set by the merchant.

•String!
non-null

The prefix of the theme.

•Boolean!
non-null

Whether the theme is processing.

•Boolean!
non-null

Whether the theme processing failed.

•ThemeRole!
non-null

The role of the theme.

•Int

The theme store ID.

•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.


•DateTime!
non-null

The date and time when the theme was last updated.

•OBJECT

A standalone content page in the online store. Pages display HTML-formatted content for informational pages like "About Us", contact information, or shipping policies.

Each page has a unique handle for URL routing and supports custom template suffixes for specialized layouts. Pages can be published or hidden, and include creation and update timestamps.

•HTML!
non-null

The text content of the page, complete with HTML markup.

•String!
non-null

The first 150 characters of the page body. If the page body contains more than 150 characters, additional characters are truncated by ellipses.

•DateTime!
non-null

The date and time (ISO 8601 format) of the page creation.

•String!
non-null

A default cursor that returns the single next record, sorted ascending by ID.

•EventConnection!
non-null

The paginated list of events associated with the host subject.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators. | comments | boolean | Whether or not to include comment-events in your search, passing false will exclude comment-events, any other value will include comment-events. | | | - false
- true | | created_at | time | Filter by the date and time when the event occurred. Event data is retained for 1 year. | | | - created_at:>2025-10-21
- created_at:<now | | id | id | Filter by id range. | | | - id:1234
- id:>=1234
- id:<=1234 | | subject_type | string | The resource type affected by this event. See EventSubjectType for possible values. | | | - PRODUCT_VARIANT
- PRODUCT
- COLLECTION | You can apply one or more filters to a query. Learn more about Shopify API search syntax.

•string

The action that occured.

Example:

  • action:create
•Boolean
Default:false

Reverse the order of the underlying list.

•EventSortKeys
Default:ID

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.


•String!
non-null

A unique, human-friendly string for the page. In themes, the Liquid templating language refers to a page by its handle.

•ID!
non-null

A globally-unique ID.

•Boolean!
non-null

Whether or not the page is visible.

•Metafield

A custom field, including its namespace and key, that's associated with a Shopify resource for the purposes of adding and storing additional information.

Arguments

•String!
required

The key for the metafield.

•String

The container the metafield belongs to. If omitted, the app-reserved namespace will be used.


•MetafieldConnection!
non-null

A list of custom fields that a merchant associates with a Shopify resource.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•[String!]

List of keys of metafields in the format namespace.key, will be returned in the same format.

•Int

The last n elements from the paginated list.

•String

The metafield namespace to filter by. If omitted, all metafields are returned.

•Boolean
Default:false

Reverse the order of the underlying list.


•DateTime

The date and time (ISO 8601 format) when the page became or will become visible. Returns null when the page isn't visible.

•String

The suffix of the template that's used to render the page.

•String!
non-null

Title of the page.

•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.


•DateTime!
non-null

The date and time (ISO 8601 format) of the latest page update.

Anchor to metafieldDefinitionsmetafieldDefinitions
•MetafieldDefinitionConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

Filter metafield definitions by namespace.

•MetafieldDefinitionPinnedStatus
Default:ANY

Filter by the definition's pinned status.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
created_attimeFilter by the date and time when the metafield
definition was created.- created_at:>2020-10-21T23:39:20Z
-
created_at:<now
- created_at:<=2024
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
keystringFilter by the metafield definition key
field.- key:some-key
namespacestringFilter by the metafield definition namespace
field.- namespace:some-namespace
owner_typestringFilter by the metafield definition ownerType
field.- owner_type:PRODUCT
typestringFilter by the metafield definition type
field.- type:single_line_text_field
updated_attimeFilter by the date and time when the metafield
definition was last updated.- updated_at:>2020-10-21T23:39:20Z
  • updated_at:<now
    - updated_at:<=2024 | You can apply one or more filters to a query. Learn more about Shopify API search syntax.
•Boolean
Default:false

Reverse the order of the underlying list.

•MetafieldDefinitionSortKeys
Default:ID

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.


•OBJECT

The Product object lets you manage products in a merchant’s store.

Products are the goods and services that merchants offer to customers. They can include various details such as title, description, price, images, and options such as size or color. You can use product variants to create or update different versions of the same product. You can also add or update product media. Products can be organized by grouping them into a collection.

Learn more about working with Shopify's product model, including limitations and considerations.

Anchor to availablePublicationsCountavailablePublicationsCount
•Count

The number of publications that a resource is published to, without feedback errors.

•ProductBundleComponentConnection!
non-null

A list of components that are associated with a product in a bundle.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.


Anchor to bundleConsolidatedOptionsbundleConsolidatedOptions
•[ComponentizedProductsBundleConsolidatedOption!]

A list of consolidated options for a product in a bundle.

•TaxonomyCategory

The category of a product from Shopify's Standard Product Taxonomy.

•CollectionConnection!
non-null

A list of collections that include the product.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
collection_typestring- custom
- smart
handlestring
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
product_ididFilter by collections containing a product by its ID.
product_publication_statusstringFilter 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<br/> - * {channel_app_id}-needs_action`
-
* {channel_app_id}-awaiting_review
- `*
{channel_app_id}-published<br/> - * {channel_app_id}-demoted<br/> - *
{channel_app_id}-scheduled<br/> - *
{channel_app_id}-provisionally_published`-
product_publication_status:189769876-approved
publishable_statusstringDeprecated: 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](https://shopify.dev/api/admin-graphql/latest/objects/Channel#app-price)
(Channel.app.id) and one of the valid status values.- `*
{channel_app_id}-unset<br/> - * {channel_app_id}-pending<br/> - *
{channel_app_id}-approved<br/> - * {channel_app_id}-not_approved`-
publishable_status:580111-unset
- publishable_status:580111-pending
published_attimeFilter by the date and time when the collection was published to the Online Store.
published_statusstringFilter 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](https://shopify.dev/api/admin-graphql/latest/objects/Channel#app-price)
(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.
•Boolean
Default:false

Reverse the order of the underlying list.

•CollectionSortKeys
Default:ID

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.


•CombinedListing

A special product type that combines separate products from a store into a single product listing. Combined listings are connected by a shared option, such as color, model, or dimension.

•CombinedListingsRole

The role of the product in a combined listing.

If null, then the product isn't part of any combined listing.

•ProductCompareAtPriceRange

The compare-at price range of the product in the shop's default currency.

•ProductContextualPricing!
non-null

The pricing that applies to a customer in a specific context. For example, a price might vary depending on the customer's location. Only active markets are considered in the price resolution.

Arguments

•ContextualPricingContext!
required

The context used to generate contextual pricing for the variant.


•DateTime!
non-null

The date and time when the product was created.

•String!
non-null

A default cursor that returns the single next record, sorted ascending by ID.

•String!
non-null

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

Arguments

•Int

Truncates a string after the given length.


•HTML!
non-null

The description of the product, with HTML tags. For example, the description might include bold <strong></strong> and italic <i></i> text.

•EventConnection!
non-null

The paginated list of events associated with the host subject.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators. | comments | boolean | Whether or not to include comment-events in your search, passing false will exclude comment-events, any other value will include comment-events. | | | - false
- true | | created_at | time | Filter by the date and time when the event occurred. Event data is retained for 1 year. | | | - created_at:>2025-10-21
- created_at:<now | | id | id | Filter by id range. | | | - id:1234
- id:>=1234
- id:<=1234 | | subject_type | string | The resource type affected by this event. See EventSubjectType for possible values. | | | - PRODUCT_VARIANT
- PRODUCT
- COLLECTION | You can apply one or more filters to a query. Learn more about Shopify API search syntax.

•string

The action that occured.

Example:

  • action:create
•Boolean
Default:false

Reverse the order of the underlying list.

•EventSortKeys
Default:ID

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.


•Media

The featured media associated with the product.

•ResourceFeedback

The information that lets merchants know what steps they need to take to make sure that the app is set up correctly.

For example, if a merchant hasn't set up a product correctly in the app, then the feedback might include a message that says "You need to add a price to this product".

Anchor to giftCardTemplateSuffixgiftCardTemplateSuffix
•String

The theme template that's used when customers view the gift card in a store.

•String!
non-null

A unique, human-readable string of the product's title. A handle can contain letters, hyphens (-), and numbers, but no spaces. The handle is used in the online store URL for the product.

Anchor to hasOnlyDefaultVarianthasOnlyDefaultVariant
•Boolean!
non-null

Whether the product has only a single variant with the default option and value.

Anchor to hasOutOfStockVariantshasOutOfStockVariants
•Boolean!
non-null

Whether the product has variants that are out of stock.

Anchor to hasVariantsThatRequiresComponentshasVariantsThatRequiresComponents
•Boolean!
non-null

Whether at least one of the product variants requires bundle components.

Learn more about store eligibility for bundles.

•ID!
non-null

A globally-unique ID.

•Boolean!
non-null

Whether the product is in a specified collection.

Arguments

•ID!
required

The ID of the collection to check. For example, id: "gid://shopify/Collection/123".


•Boolean!
non-null

Whether the product is a gift card.

•UnsignedInt64!
non-null

The ID of the corresponding resource in the REST Admin API.

•MediaConnection!
non-null

The media associated with the product. Valid media are images, 3D models, videos.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators. You can apply one or more filters to a query. Learn more about Shopify API search syntax.

•id

Filter by id range.

Example:

  • id:1234
  • id:>=1234
  • id:<=1234
Anchor to media_type
•string

Valid values:

  • IMAGE
  • VIDEO
  • MODEL_3D
  • EXTERNAL_VIDEO
•Boolean
Default:false

Reverse the order of the underlying list.

•ProductMediaSortKeys
Default:POSITION

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.


•Count

The total count of media that's associated with a product.

•Metafield

A custom field, including its namespace and key, that's associated with a Shopify resource for the purposes of adding and storing additional information.

Arguments

•String!
required

The key for the metafield.

•String

The container the metafield belongs to. If omitted, the app-reserved namespace will be used.


•MetafieldConnection!
non-null

A list of custom fields that a merchant associates with a Shopify resource.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•[String!]

List of keys of metafields in the format namespace.key, will be returned in the same format.

•Int

The last n elements from the paginated list.

•String

The metafield namespace to filter by. If omitted, all metafields are returned.

•Boolean
Default:false

Reverse the order of the underlying list.


Anchor to onlineStorePreviewUrlonlineStorePreviewUrl
•URL

The preview URL for the online store.

•URL

The product's URL on the online store. If null, then the product isn't published to the online store sales channel.

•[ProductOption!]!
non-null

A list of product options. The limit is defined by the shop's resource limits for product options (Shop.resourceLimits.maxProductOptions).

Arguments

•Int

Truncate the array result to this size.


•ProductPriceRangeV2!
non-null

The minimum and maximum prices of a product, expressed in decimal numbers. For example, if the product is priced between $10.00 and $50.00, then the price range is $10.00 - $50.00.

•ProductComponentTypeConnection!
non-null

A list of products that contain at least one variant associated with at least one of the current products' variants via group relationship.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.


Anchor to productComponentsCountproductComponentsCount
•Count

A count of unique products that contain at least one variant associated with at least one of the current products' variants via group relationship.

•ProductConnection!
non-null

A list of products that has a variant that contains any of this product's variants as a component.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
barcodestringFilter by the product variant barcode
field.- barcode:ABC-abc-1234
bundlesbooleanFilter by a [product
bundle](https://shopify.dev/docs/apps/build/product-merchandising/bundles).
A product bundle is a set of two or more related products, which are
commonly offered at a discount.- bundles:true
category_idstringFilter 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_ididFilter by the collection id
field.- collection_id:108179161409
combined_listing_rolestringFilter by the role of the product in a combined listing.
- parent
- child
- no_role
-
combined_listing_role:parent
created_attimeFilter 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_ididFilter by the delivery profile id
field.- delivery_profile_id:108179161409
error_feedbackstringFilter by products with publishing errors.
gift_cardbooleanFilter by the product isGiftCard
field.- gift_card:true
handlestringFilter by a comma-separated list of product handles.
- handle:the-minimal-snowboard
has_only_compositesbooleanFilter by products that have only
composite variants.- has_only_composites:true
has_only_default_variantbooleanFilter 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_componentsbooleanFilter by products that have
variants with associated components.-
has_variant_with_components:true
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
inventory_totalintegerFilter by inventory count.-
inventory_total:0
- inventory_total:>150
-
inventory_total:>=200
is_price_reducedbooleanFilter by products that have a reduced price.
For more information, refer to the CollectionRule
object.- is_price_reduced:true
metafields.{namespace}.{key}mixedFilters 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_somewherebooleanFilter by products that are out of
stock in at least one location.- out_of_stock_somewhere:true
pricebigdecimalFilter by the product variant price
field.- price:100.57
product_configuration_ownerstringFilter by the app
id
field.- product_configuration_owner:10001
product_publication_statusstringFilter 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<br/> - * {channel_app_id}-needs_action`
-
* {channel_app_id}-awaiting_review
- `*
{channel_app_id}-published<br/> - * {channel_app_id}-demoted<br/> - *
{channel_app_id}-scheduled<br/> - *
{channel_app_id}-provisionally_published`-
product_publication_status:189769876-approved
product_typestringFilter by a comma-separated list of [product
types](https://help.shopify.com/manual/products/details/product-type).
  • 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.
•Boolean
Default:false

Reverse the order of the underlying list.


•String!
non-null

The product type that merchants define.

•DateTime

The date and time when the product was published to the online store.

•Boolean!
non-null

Whether the product is published for a customer only in a specified context. For example, a product might be published for a customer only in a specific location.

Arguments

•ContextualPublicationContext!
required

The context used to determine publication status.


Anchor to publishedOnPublicationpublishedOnPublication
•Boolean!
non-null

Whether the resource is published to a specified publication.

Arguments

•ID!
required

The ID of the publication to check. For example, id: "gid://shopify/Publication/123".


•Boolean!
non-null

Whether the product can only be purchased with a selling plan. Products that are sold on subscription (requiresSellingPlan: true) can be updated only for online stores. If you update a product to be subscription-only (requiresSellingPlan:false), then the product is unpublished from all channels, except the online store.

Anchor to resourcePublicationsresourcePublications
•ResourcePublicationConnection!
non-null

The list of resources that are published to a publication.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:true

Whether to return only the resources that are currently published. If false, then also returns the resources that are scheduled to be published.

•Boolean
Default:false

Reverse the order of the underlying list.


Anchor to resourcePublicationsCountresourcePublicationsCount
•Count

The total number of publications that a resource is published to, including publications with feedback errors. To get a count that excludes publications with feedback errors, use availablePublicationsCount.

Arguments

•Boolean
Default:true

Include only the resource's publications that are published. If false, then return all the resource's publications including future publications.


Anchor to resourcePublicationsV2resourcePublicationsV2
•ResourcePublicationV2Connection!
non-null

The list of resources that are either published or staged to be published to a publication. By default, only publications to APP catalog types are returned. For Product and ProductVariant, use the catalogType argument to retrieve publications for other catalog types, such as COMPANY_LOCATION (B2B) or MARKET. Collection only supports publications to APP catalog types.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•CatalogType

Filter publications by catalog type. When not specified, defaults to APP. Has no effect on Collection, which only supports APP.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:true

Whether to return only the resources that are currently published. If false, then also returns the resources that are scheduled or staged to be published.

•Boolean
Default:false

Reverse the order of the underlying list.


Anchor to restrictedForResourcerestrictedForResource
•RestrictedForResource

Whether the merchant can make changes to the product when they edit the order associated with the product. For example, a merchant might be restricted from changing product details when they edit an order.

Arguments

•ID!
required

The resource Id of the order with edits applied but not saved.


•SellingPlanGroupConnection!
non-null

A list of all selling plan groups that are associated with the product either directly, or through the product's variants.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.


Anchor to sellingPlanGroupsCountsellingPlanGroupsCount
•Count

A count of selling plan groups that are associated with the product.

•SEO!
non-null

The SEO title and description that are associated with a product.

•ProductStatus!
non-null

The product status, which controls visibility across all sales channels.

•[String!]!
non-null

A comma-separated list of searchable keywords that are associated with the product. For example, a merchant might apply the sports and summer tags to products that are associated with sportwear for summer.

Updating tags overwrites any existing tags that were previously added to the product. To add new tags without overwriting existing tags, use the tagsAdd mutation.

•String

The theme template that's used when customers view the product in a store.

•String!
non-null

The name for the product that displays to customers. The title is used to construct the product's handle. For example, if a product is titled "Black Sunglasses", then the handle is black-sunglasses.

•Int!
non-null

The quantity of inventory that's in stock.

•Boolean!
non-null

Whether inventory tracking has been enabled for the product.

•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.


Anchor to unpublishedPublicationsunpublishedPublications
•PublicationConnection!
non-null

The list of publications that the resource isn't published to.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.


•DateTime!
non-null

The date and time when the product was last modified. A product's updatedAt value can change for different reasons. For example, if an order is placed for a product that has inventory tracking set up, then the inventory adjustment is counted as an update.

•ProductVariantConnection!
non-null

A list of variants associated with the product. If querying a single product at the root, you can fetch up to 2048 variants.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.

•ProductVariantSortKeys
Default:POSITION

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.


•Count

The number of variants that are associated with the product.

•String!
non-null

The name of the product's vendor.

•String
Deprecated
•String
Deprecated
Anchor to descriptionPlainSummarydescriptionPlainSummary
•String!
non-nullDeprecated
•Image
Deprecated
•ImageConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•CropRegion
Deprecated
•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Int
Deprecated
•Int
Deprecated
•Boolean
Default:false

Reverse the order of the underlying list.

•Int
DeprecatedDefault:1
•ProductImageSortKeys
Default:POSITION

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.


Anchor to metafieldDefinitionsmetafieldDefinitions
•MetafieldDefinitionConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

Filter metafield definitions by namespace.

•MetafieldDefinitionPinnedStatus
Default:ANY

Filter by the definition's pinned status.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
created_attimeFilter by the date and time when the metafield
definition was created.- created_at:>2020-10-21T23:39:20Z
-
created_at:<now
- created_at:<=2024
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
keystringFilter by the metafield definition key
field.- key:some-key
namespacestringFilter by the metafield definition namespace
field.- namespace:some-namespace
owner_typestringFilter by the metafield definition ownerType
field.- owner_type:PRODUCT
typestringFilter by the metafield definition type
field.- type:single_line_text_field
updated_attimeFilter by the date and time when the metafield
definition was last updated.- updated_at:>2020-10-21T23:39:20Z
  • updated_at:<now
    - updated_at:<=2024 | You can apply one or more filters to a query. Learn more about Shopify API search syntax.
•Boolean
Default:false

Reverse the order of the underlying list.

•MetafieldDefinitionSortKeys
Default:ID

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.


•ProductPriceRange!
non-nullDeprecated
•ProductCategory
Deprecated
•ProductPublicationConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.


•Int!
non-nullDeprecated

Arguments

•Boolean
Default:true

Include only the resource's publications that are published. If false, then return all the resource's publications including future publications.


•ProductPublicationConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:true

Return only the publications that are published. If false, then return all publications.

•Boolean
Default:false

Reverse the order of the underlying list.


•Boolean!
non-nullDeprecated

Arguments

•ID!
required

The ID of the channel to check.


Anchor to publishedOnCurrentChannelpublishedOnCurrentChannel
•Boolean!
non-nullDeprecated
Anchor to publishedOnCurrentPublicationpublishedOnCurrentPublication
•Boolean!
non-nullDeprecated
Anchor to resourcePublicationOnCurrentPublicationresourcePublicationOnCurrentPublication
•ResourcePublicationV2
Deprecated
Anchor to sellingPlanGroupCountsellingPlanGroupCount
•Int!
non-nullDeprecated
Anchor to standardizedProductTypestandardizedProductType
•StandardizedProductType
Deprecated
•StorefrontID!
non-nullDeprecated
•Int!
non-nullDeprecated
•ChannelConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.


•OBJECT

A product attribute that customers can choose from, such as "Size", "Color", or "Material". Product objects use options to define the different variations available for purchase. Each option has a name and a set of possible values that combine to create ProductVariant objects.

The option includes its display position, associated values, and optional LinkedMetafield for structured data. Options support translations for international selling and track which ProductOptionValue objects that variants actively use versus unused values that exist without associated variants.

•ID!
non-null

A globally-unique ID.

•LinkedMetafield

The metafield identifier linked to this option.

•String!
non-null

The product option’s name.

•[ProductOptionValue!]!
non-null

Similar to values, option_values returns all the corresponding option value objects to the product option, including values not assigned to any variants.

•Int!
non-null

The product option's position.

•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.


•[String!]!
non-null

The corresponding value to the product option name.

•OBJECT

A specific value for a ProductOption, such as "Red" or "Blue" for a "Color" option. Each value can be assigned to ProductVariant objects to create different versions of a Product.

The value tracks whether any variants currently use it through the hasVariants field. Values can include visual representations through swatches that display colors or images. When linked to a Metafield, the linkedMetafieldValue provides additional structured data for the option value.

•Boolean!
non-null

Whether the product option value has any linked variants.

•ID!
non-null

A globally-unique ID.

Anchor to linkedMetafieldValuelinkedMetafieldValue
•String

The value of the linked metafield.

•String!
non-null

The name of the product option value.

•ProductOptionValueSwatch

The swatch associated with the product option value.

•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.


•OBJECT

The ProductVariant object represents a 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 ProductVariant object to manage the full lifecycle and configuration of a product's variants. Common use cases for using the ProductVariant object include:

  • Tracking inventory for each variant
  • Setting unique prices for each variant
  • Assigning barcodes and SKUs to connect variants to fulfillment services
  • Attaching variant-specific images and media
  • Setting delivery and tax requirements
  • Supporting product bundles, subscriptions, and selling plans

A ProductVariant is associated with a parent Product object. ProductVariant serves as the central link between a product's merchandising configuration, inventory, pricing, fulfillment, and sales channels within the GraphQL Admin API schema. Each variant can reference other GraphQL types such as:

Learn more about Shopify's product model.

•Boolean!
non-null

Whether the product variant is available for sale.

•String

The value of the barcode associated with the product.

•Money

The compare-at price of the variant in the default shop currency.

•ProductVariantContextualPricing!
non-null

The pricing that applies for a customer in a given context. As of API version 2025-04, only active markets are considered in the price resolution.

Arguments

•ContextualPricingContext!
required

The context used to generate contextual pricing for the variant.


•DateTime!
non-null

The date and time when the variant was created.

•String!
non-null

A default cursor that returns the single next record, sorted ascending by ID.

•DeliveryProfile

The delivery profile for the variant.

•String!
non-null

Display name of the variant, based on product's title + variant's title.

•EventConnection!
non-null

The paginated list of events associated with the host subject.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators. | comments | boolean | Whether or not to include comment-events in your search, passing false will exclude comment-events, any other value will include comment-events. | | | - false
- true | | created_at | time | Filter by the date and time when the event occurred. Event data is retained for 1 year. | | | - created_at:>2025-10-21
- created_at:<now | | id | id | Filter by id range. | | | - id:1234
- id:>=1234
- id:<=1234 | | subject_type | string | The resource type affected by this event. See EventSubjectType for possible values. | | | - PRODUCT_VARIANT
- PRODUCT
- COLLECTION | You can apply one or more filters to a query. Learn more about Shopify API search syntax.

•string

The action that occured.

Example:

  • action:create
•Boolean
Default:false

Reverse the order of the underlying list.

•EventSortKeys
Default:ID

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.


•ID!
non-null

A globally-unique ID.

•InventoryItem!
non-null

The inventory item, which is used to query for inventory information.

•ProductVariantInventoryPolicy!
non-null

Whether customers are allowed to place an order for the product variant when it's out of stock.

•Int

The total sellable quantity of the variant.

•UnsignedInt64!
non-null

The ID of the corresponding resource in the REST Admin API.

•MediaConnection!
non-null

The media associated with the product variant.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.


•Metafield

A custom field, including its namespace and key, that's associated with a Shopify resource for the purposes of adding and storing additional information.

Arguments

•String!
required

The key for the metafield.

•String

The container the metafield belongs to. If omitted, the app-reserved namespace will be used.


•MetafieldConnection!
non-null

A list of custom fields that a merchant associates with a Shopify resource.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•[String!]

List of keys of metafields in the format namespace.key, will be returned in the same format.

•Int

The last n elements from the paginated list.

•String

The metafield namespace to filter by. If omitted, all metafields are returned.

•Boolean
Default:false

Reverse the order of the underlying list.


•Int!
non-null

The order of the product variant in the list of product variants. The first position in the list is 1.

•Money!
non-null

The price of the product variant in the default shop currency.

•Product!
non-null

The product that this variant belongs to.

•ProductConnection!
non-null

A list of products that have product variants that contain this variant as a product component.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
barcodestringFilter by the product variant barcode
field.- barcode:ABC-abc-1234
bundlesbooleanFilter by a [product
bundle](https://shopify.dev/docs/apps/build/product-merchandising/bundles).
A product bundle is a set of two or more related products, which are
commonly offered at a discount.- bundles:true
category_idstringFilter 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_ididFilter by the collection id
field.- collection_id:108179161409
combined_listing_rolestringFilter by the role of the product in a combined listing.
- parent
- child
- no_role
-
combined_listing_role:parent
created_attimeFilter 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_ididFilter by the delivery profile id
field.- delivery_profile_id:108179161409
error_feedbackstringFilter by products with publishing errors.
gift_cardbooleanFilter by the product isGiftCard
field.- gift_card:true
handlestringFilter by a comma-separated list of product handles.
- handle:the-minimal-snowboard
has_only_compositesbooleanFilter by products that have only
composite variants.- has_only_composites:true
has_only_default_variantbooleanFilter 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_componentsbooleanFilter by products that have
variants with associated components.-
has_variant_with_components:true
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
inventory_totalintegerFilter by inventory count.-
inventory_total:0
- inventory_total:>150
-
inventory_total:>=200
is_price_reducedbooleanFilter by products that have a reduced price.
For more information, refer to the CollectionRule
object.- is_price_reduced:true
metafields.{namespace}.{key}mixedFilters 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_somewherebooleanFilter by products that are out of
stock in at least one location.- out_of_stock_somewhere:true
pricebigdecimalFilter by the product variant price
field.- price:100.57
product_configuration_ownerstringFilter by the app
id
field.- product_configuration_owner:10001
product_publication_statusstringFilter 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<br/> - * {channel_app_id}-needs_action`
-
* {channel_app_id}-awaiting_review
- `*
{channel_app_id}-published<br/> - * {channel_app_id}-demoted<br/> - *
{channel_app_id}-scheduled<br/> - *
{channel_app_id}-provisionally_published`-
product_publication_status:189769876-approved
product_typestringFilter by a comma-separated list of [product
types](https://help.shopify.com/manual/products/details/product-type).
  • 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.
•Boolean
Default:false

Reverse the order of the underlying list.


Anchor to productVariantComponentsproductVariantComponents
•ProductVariantComponentConnection!
non-null

A list of the product variant components.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.


•Boolean!
non-null

Whether a product variant requires components. The default value is false. If true, then the product variant can only be purchased as a parent bundle with components and it will be omitted from channels that don't support bundles.

•[SelectedOption!]!
non-null

List of product options applied to the variant.

Anchor to sellableOnlineQuantitysellableOnlineQuantity
•Int!
non-null

The total sellable quantity of the variant for online channels. This doesn't represent the total available inventory or capture limitations based on customer location.

•SellingPlanGroupConnection!
non-null

A list of all selling plan groups defined in the current shop associated with the product variant.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.


Anchor to sellingPlanGroupsCountsellingPlanGroupsCount
•Count

Count of selling plan groups associated with the product variant.

•Boolean!
non-null

Whether to show the unit price for this product variant.

•String

A case-sensitive identifier for the product variant in the shop. Required in order to connect to a fulfillment service.

•Boolean!
non-null

Whether a tax is charged when the product variant is sold.

•String!
non-null

The title of the product variant.

•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.


•MoneyV2

The unit price value for the variant based on the variant measurement.

Anchor to unitPriceMeasurementunitPriceMeasurement
•UnitPriceMeasurement

The unit price measurement for the variant.

•DateTime!
non-null

The date and time (ISO 8601 format) when the product variant was last modified.

•Image
Deprecated

Arguments

•CropRegion
Deprecated
•Int
Deprecated
•Int
Deprecated
•Int
DeprecatedDefault:1

Anchor to metafieldDefinitionsmetafieldDefinitions
•MetafieldDefinitionConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

Filter metafield definitions by namespace.

•MetafieldDefinitionPinnedStatus
Default:ANY

Filter by the definition's pinned status.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
created_attimeFilter by the date and time when the metafield
definition was created.- created_at:>2020-10-21T23:39:20Z
-
created_at:<now
- created_at:<=2024
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
keystringFilter by the metafield definition key
field.- key:some-key
namespacestringFilter by the metafield definition namespace
field.- namespace:some-namespace
owner_typestringFilter by the metafield definition ownerType
field.- owner_type:PRODUCT
typestringFilter by the metafield definition type
field.- type:single_line_text_field
updated_attimeFilter by the date and time when the metafield
definition was last updated.- updated_at:>2020-10-21T23:39:20Z
  • updated_at:<now
    - updated_at:<=2024 | You can apply one or more filters to a query. Learn more about Shopify API search syntax.
•Boolean
Default:false

Reverse the order of the underlying list.

•MetafieldDefinitionSortKeys
Default:ID

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.


•ProductVariantPricePairConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

Anchor to presentmentCurrenciespresentmentCurrencies
•[CurrencyCode!]

The presentment currencies prices should return in.

•Boolean
Default:false

Reverse the order of the underlying list.


Anchor to sellingPlanGroupCountsellingPlanGroupCount
•Int!
non-nullDeprecated
•StorefrontID!
non-nullDeprecated
•String
Deprecated
•OBJECT

How a product can be sold and purchased through recurring billing or deferred purchase options. Defines the specific terms for subscriptions, pre-orders, or try-before-you-buy offers, including when to bill customers, when to fulfill orders, and what pricing adjustments to apply.

Each selling plan has billing, delivery, and pricing policies that control the purchase experience. The plan's options and category help merchants organize and report on different selling strategies. Plans are grouped within a SellingPlanGroup that associates them with Product and ProductVariant objects.


Caution

Selling plans and associated records are automatically deleted 48 hours after a merchant uninstalls the App that created them. Back up these records if you need to restore them later.


Learn more about selling plans.

•SellingPlanBillingPolicy!
non-null

A selling plan policy which describes the recurring billing details.

•SellingPlanCategory

The category used to classify the selling plan for reporting purposes.

•DateTime!
non-null

The date and time when the selling plan was created.

•SellingPlanDeliveryPolicy!
non-null

A selling plan policy which describes the delivery details.

•String

Buyer facing string which describes the selling plan commitment.

•ID!
non-null

A globally-unique ID.

•SellingPlanInventoryPolicy

When to reserve inventory for a selling plan.

•Metafield

A custom field, including its namespace and key, that's associated with a Shopify resource for the purposes of adding and storing additional information.

Arguments

•String!
required

The key for the metafield.

•String

The container the metafield belongs to. If omitted, the app-reserved namespace will be used.


•MetafieldConnection!
non-null

A list of custom fields that a merchant associates with a Shopify resource.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•[String!]

List of keys of metafields in the format namespace.key, will be returned in the same format.

•Int

The last n elements from the paginated list.

•String

The metafield namespace to filter by. If omitted, all metafields are returned.

•Boolean
Default:false

Reverse the order of the underlying list.


•String!
non-null

A customer-facing description of the selling plan.

If your store supports multiple currencies, then don't include country-specific pricing content, such as "Buy monthly, get 10$ CAD off". This field won't be converted to reflect different currencies.

•[String!]!
non-null

The values of all options available on the selling plan. Selling plans are grouped together in Liquid when they're created by the same app, and have the same selling_plan_group.name and selling_plan_group.options values.

•Int

Relative position of the selling plan for display. A lower position will be displayed before a higher position.

•[SellingPlanPricingPolicy!]!
non-null

Selling plan pricing details.

•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.


Anchor to metafieldDefinitionsmetafieldDefinitions
•MetafieldDefinitionConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

Filter metafield definitions by namespace.

•MetafieldDefinitionPinnedStatus
Default:ANY

Filter by the definition's pinned status.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
created_attimeFilter by the date and time when the metafield
definition was created.- created_at:>2020-10-21T23:39:20Z
-
created_at:<now
- created_at:<=2024
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
keystringFilter by the metafield definition key
field.- key:some-key
namespacestringFilter by the metafield definition namespace
field.- namespace:some-namespace
owner_typestringFilter by the metafield definition ownerType
field.- owner_type:PRODUCT
typestringFilter by the metafield definition type
field.- type:single_line_text_field
updated_attimeFilter by the date and time when the metafield
definition was last updated.- updated_at:>2020-10-21T23:39:20Z
  • updated_at:<now
    - updated_at:<=2024 | You can apply one or more filters to a query. Learn more about Shopify API search syntax.
•Boolean
Default:false

Reverse the order of the underlying list.

•MetafieldDefinitionSortKeys
Default:ID

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.


•OBJECT

A selling method that defines how products can be sold through purchase options like subscriptions, pre-orders, or try-before-you-buy. Groups one or more SellingPlan objects that share the same selling method and options.

The group provides buyer-facing labels and merchant-facing descriptions for the selling method. Associates Product and ProductVariant objects with selling plan groups to offer them through these purchase options.


Caution

Selling plan groups and their associated records are automatically deleted 48 hours after a merchant uninstalls the App that created them. Back up these records if you need to restore them later.


•String

The ID for app, exposed in Liquid and product JSON.

•Boolean!
non-null

Whether the given product is directly associated to the selling plan group.

Arguments

•ID!
required

The ID of the product.


Anchor to appliesToProductVariantappliesToProductVariant
•Boolean!
non-null

Whether the given product variant is directly associated to the selling plan group.

Arguments

•ID!
required

The ID of the product.


Anchor to appliesToProductVariantsappliesToProductVariants
•Boolean!
non-null

Whether any of the product variants of the given product are associated to the selling plan group.

Arguments

•ID!
required

The ID of the product.


•DateTime!
non-null

The date and time when the selling plan group was created.

•String

The merchant-facing description of the selling plan group.

•ID!
non-null

A globally-unique ID.

•String!
non-null

The merchant-facing label of the selling plan group.

•String!
non-null

The buyer-facing label of the selling plan group.

•[String!]!
non-null

The values of all options available on the selling plan group. Selling plans are grouped together in Liquid when they're created by the same app, and have the same selling_plan_group.name and selling_plan_group.options values.

•Int

The relative position of the selling plan group for display.

•ProductConnection!
non-null

Products associated to the selling plan group.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.


•Count

A count of products associated to the selling plan group.

•ProductVariantConnection!
non-null

Product variants associated to the selling plan group.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•ID

Filters the product variants by a product ID.

•Boolean
Default:false

Reverse the order of the underlying list.


Anchor to productVariantsCountproductVariantsCount
•Count

A count of product variants associated to the selling plan group.

Arguments

•ID

The ID of the product to scope the count to.


•SellingPlanConnection!
non-null

Selling plans associated to the selling plan group.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.


•String

A summary of the policies associated to the selling plan group.

•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.


•OBJECT

The central configuration and settings hub for a Shopify store. Access business information, operational preferences, feature availability, and store-wide settings that control how the shop operates.

Includes core business details like the shop name, contact emails, billing address, and currency settings. The shop configuration determines customer account requirements, available sales channels, enabled features, payment settings, and policy documents. Also provides access to shop-level resources such as staff members, fulfillment services, navigation settings, and storefront access tokens.

•StaffMember!
non-null

Account owner information.

•[ShopAlert!]!
non-null

A list of the shop's active alert messages that appear in the Shopify admin.

Anchor to allProductCategoriesListallProductCategoriesList
•[TaxonomyCategory!]!
non-null

A list of the shop's product categories. Limit: 1000 product categories.

Anchor to availableChannelAppsavailableChannelApps
•AppConnection!
non-null

The list of sales channels not currently installed on the shop.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.


Anchor to channelDefinitionsForInstalledChannelschannelDefinitionsForInstalledChannels
•[AvailableChannelDefinitionsByChannel!]!
non-null

List of all channel definitions associated with a shop.

Anchor to checkoutApiSupportedcheckoutApiSupported
•Boolean!
non-null

Specifies whether the shop supports checkouts via Checkout API.

•String!
non-null

The public-facing contact email address for the shop. Customers will use this email to communicate with the shop owner.

Anchor to countriesInShippingZonescountriesInShippingZones
•CountriesInShippingZones!
non-null

Countries that have been defined in shipping zones for the shop.

•DateTime!
non-null

The date and time when the shop was created.

•CurrencyCode!
non-null

The three letter code for the currency that the shop sells in.

•CurrencyFormats!
non-null

How currencies are displayed on your store.

•CurrencySettingConnection!
non-null

The presentment currency settings for the shop excluding the shop's own currency.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.


•ShopCustomerAccountsSetting!
non-null

Whether customer accounts are required, optional, or disabled for the shop.

•CustomerAccountsV2!
non-null

Information about the shop's customer accounts.

•StringConnection!
non-null

A list of tags that have been added to customer accounts.

Arguments

•Int!
required

The first n elements from the paginated list.


•String

The shop's meta description used in search engine results.

•StringConnection!
non-null

A list of tags that have been added to draft orders.

Arguments

•Int!
required

The first n elements from the paginated list.


•String!
non-null

The shop owner's email address. Shopify will use this email address to communicate with the shop owner.

Anchor to enabledPresentmentCurrenciesenabledPresentmentCurrencies
•[CurrencyCode!]!
non-null

The presentment currencies enabled for the shop.

•EntitlementsType!
non-null

The entitlements for a shop.

•ShopFeatures!
non-null

The set of features enabled for the shop.

•[FulfillmentService!]!
non-null

List of the shop's installed fulfillment services.

•String!
non-null

The shop's time zone as defined by the IANA.

•ID!
non-null

A globally-unique ID.

Anchor to marketingSmsConsentEnabledAtCheckoutmarketingSmsConsentEnabledAtCheckout
•Boolean!
non-null

Whether SMS marketing has been enabled on the shop's checkout configuration settings.

Anchor to merchantApprovalSignalsmerchantApprovalSignals
•MerchantApprovalSignals

The approval signals for a shop to support onboarding to channel apps.

•Metafield

A custom field, including its namespace and key, that's associated with a Shopify resource for the purposes of adding and storing additional information.

Arguments

•String!
required

The key for the metafield.

•String

The container the metafield belongs to. If omitted, the app-reserved namespace will be used.


•MetafieldConnection!
non-null

A list of custom fields that a merchant associates with a Shopify resource.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•[String!]

List of keys of metafields in the format namespace.key, will be returned in the same format.

•Int

The last n elements from the paginated list.

•String

The metafield namespace to filter by. If omitted, all metafields are returned.

•Boolean
Default:false

Reverse the order of the underlying list.


•String!
non-null

The shop's .myshopify.com domain name.

•String!
non-null

The shop's name.

•[NavigationItem!]!
non-null

The shop's settings related to navigation.

Anchor to orderNumberFormatPrefixorderNumberFormatPrefix
•String!
non-null

The prefix that appears before order numbers.

Anchor to orderNumberFormatSuffixorderNumberFormatSuffix
•String!
non-null

The suffix that appears after order numbers.

•StringConnection!
non-null

A list of tags that have been added to orders.

Arguments

•Int!
required

The first n elements from the paginated list.

•ShopTagSort
Default:ALPHABETICAL

Sort type.


•PaymentSettings!
non-null

The shop's settings related to payments.

•ShopPlan!
non-null

The shop's billing plan.

•Domain!
non-null

The primary domain of the shop's online store.

•ShopResourceLimits!
non-null

The shop's limits for specific resources. For example, the maximum number ofvariants allowed per product, or the maximum number of locations allowed.

•URL!
non-null

The URL of the rich text editor that can be used for mobile devices.

•SearchResultConnection!
non-null

Fetches a list of admin search results by a specified query.

Arguments

•String

The elements that come after the specified cursor.

•Int!
required

The first n elements from the paginated list.

•String!
required

The search query to filter by.

•[SearchResultType!]

The search result types to filter by.


•SearchFilterOptions!
non-null

The list of search filter options for the shop. These can be used to filter productvisibility for the shop.

•Boolean!
non-null

Whether the shop has outstanding setup steps.

•[CountryCode!]!
non-null

The list of countries that the shop ships to.

•ShopAddress!
non-null

The shop's address information as it will appear to buyers.

•String!
non-null

The name of the shop owner.

•[ShopPolicy!]!
non-null

The list of all legal policies associated with a shop.

Anchor to storefrontAccessTokensstorefrontAccessTokens
•StorefrontAccessTokenConnection!
non-null

The storefront access token of a private application. These are scoped per-application.

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.


•Boolean!
non-null

Whether applicable taxes are included in the shop's product prices.

•Boolean!
non-null

Whether the shop charges taxes for shipping.

Anchor to timezoneAbbreviationtimezoneAbbreviation
•String!
non-null

The shop's time zone abbreviation.

•String!
non-null

The shop's time zone offset.

Anchor to timezoneOffsetMinutestimezoneOffsetMinutes
•Int!
non-null

The shop's time zone offset expressed as a number of minutes.

Anchor to transactionalSmsDisabledtransactionalSmsDisabled
•Boolean!
non-null

Whether transactional SMS sent by Shopify have been disabled for a shop.

•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.


•UnitSystem!
non-null

The shop's unit system for weights and measures.

•DateTime!
non-null

The date and time when the shop was last updated.

•URL!
non-null

The URL of the shop's online store.

•WeightUnit!
non-null

The shop's primary unit of weight for products and shipping.

Anchor to allProductCategoriesallProductCategories
•[ProductCategory!]!
non-nullDeprecated
•String!
non-nullDeprecated
Anchor to assignedFulfillmentOrdersassignedFulfillmentOrders
•FulfillmentOrderConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•FulfillmentOrderAssignmentStatus

The assigment status of the fulfillment orders that should be returned. If assignmentStatus argument is not provided, then the query will return all assigned fulfillment orders, except those that have the CLOSED status.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•[ID!]

Returns fulfillment orders only for certain locations, specified by a list of location IDs.

•Boolean
Default:false

Reverse the order of the underlying list.

•FulfillmentOrderSortKeys
Default:ID

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.


•ShopAddress!
non-nullDeprecated
•ChannelConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.


•CollectionConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
collection_typestring- custom
- smart
handlestring
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
product_ididFilter by collections containing a product by its ID.
product_publication_statusstringFilter 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<br/> - * {channel_app_id}-needs_action`
-
* {channel_app_id}-awaiting_review
- `*
{channel_app_id}-published<br/> - * {channel_app_id}-demoted<br/> - *
{channel_app_id}-scheduled<br/> - *
{channel_app_id}-provisionally_published`-
product_publication_status:189769876-approved
publishable_statusstringDeprecated: 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](https://shopify.dev/api/admin-graphql/latest/objects/Channel#app-price)
(Channel.app.id) and one of the valid status values.- `*
{channel_app_id}-unset<br/> - * {channel_app_id}-pending<br/> - *
{channel_app_id}-approved<br/> - * {channel_app_id}-not_approved`-
publishable_status:580111-unset
- publishable_status:580111-pending
published_attimeFilter by the date and time when the collection was published to the Online Store.
published_statusstringFilter 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](https://shopify.dev/api/admin-graphql/latest/objects/Channel#app-price)
(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.
•Boolean
Default:false

Reverse the order of the underlying list.

•ID

The ID of a saved search. The search’s query string is used as the query argument.

•CollectionSortKeys
Default:ID

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.


•CustomerConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
accepts_marketingbooleanFilter by whether a customer has consented
to receive marketing material.- accepts_marketing:true
countrystringFilter by the country associated with the customer's
address. Use either the country name or the two-letter country code.-
country:Canada
- country:JP
customer_datetimeFilter by the date and time when the customer
record was created. This query parameter filters by the createdAt
field.- customer_date:'2024-03-15T14:30:00Z'
- `customer_date:

='2024-01-01'| | email | string | The customer's email address, used to communicate information about orders and for the purposes of email marketing campaigns. You can use a wildcard value to filter the query by customers who have an email address specified. Please note that _email_ is a tokenized field: To retrieve exact matches, quote the email address (_phrase query_) as described in [Shopify API search syntax](https://shopify.dev/docs/api/usage/search-syntax). | | | -email:gmail.com<br/> - email:"bo.wang@example.com"<br/> - email:*| | first_name | string | Filter by the customer's first name. | | | -first_name:Jane| | id | id | Filter byidrange. | | | -id:1234<br/> - id:>=1234<br/> - id:<=1234| | last_abandoned_order_date | time | Filter by the date and time of the customer's most recent abandoned checkout. An abandoned checkout occurs when a customer adds items to their cart, begins the checkout process, but leaves the site without completing their purchase. | | | -last_abandoned_order_date:'2024-04-01T10:00:00Z'<br/> - last_abandoned_order_date: >='2024-01-01'| | last_name | string | Filter by the customer's last name. | | | -last_name:Reeves| | order_date | time | Filter by the date and time that the order was placed by the customer. Use this query filter to check if a customer has placed at least one order within a specified date range. | | | -order_date:'2024-02-20T00:00:00Z'&lt;br/&gt; - order_date: >='2024-01-01'`

  • order_date:'2024-01-01..2024-03-31' | | orders_count | integer | Filter by the total number of orders a customer has placed. | | | - orders_count:5 | | phone | string | The phone number of the customer, used to communicate information about orders and for the purposes of SMS marketing campaigns. You can use a wildcard value to filter the query by customers who have a phone number specified. | | | - phone:+18005550100
    - phone:* | | state | string | Filter by the state of the customer's account with the shop. This filter is only valid when Classic Customer Accounts is active. | | | - state:ENABLED
    - state:INVITED
    - state:DISABLED
    - state:DECLINED | | tag | string | Filter by the tags that are associated with the customer. This query parameter accepts multiple tags separated by commas. | | | - tag:'VIP'<br/> - tag:'Wholesale,Repeat' | | tag_not | string | Filter by the tags that aren't associated with the customer. This query parameter accepts multiple tags separated by commas. | | | - tag_not:'Prospect'<br/> - tag_not:'Test,Internal' | | total_spent | float | Filter by the total amount of money a customer has spent across all orders. | | | - total_spent:100.50
    - total_spent:50.00
    - total_spent:>100.50
    - total_spent:>50.00 | | updated_at | time | The date and time, matching a whole day, when the customer's information was last updated. | | | - updated_at:2024-01-01T00:00:00Z
    - updated_at:<now
    - updated_at:<=2024 | You can apply one or more filters to a query. Learn more about Shopify API search syntax.
•Boolean
Default:false

Reverse the order of the underlying list.

•CustomerSortKeys
Default:ID

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.


•[Domain!]!
non-nullDeprecated
•FulfillmentOrderConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Boolean
Default:false

Whether to include closed fulfillment orders.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
assigned_location_idid
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
statusstring
updated_attime
You can apply one or more filters to a query. Learn more about [Shopify API
search syntax](https://shopify.dev/api/usage/search-syntax).
•Boolean
Default:false

Reverse the order of the underlying list.

•FulfillmentOrderSortKeys
Default:ID

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.


•InventoryItemConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators. | sku | string | Filter by the inventory item sku field. Learn more about SKUs. | | | - sku:XYZ-12345 | | updated_at | time | You can apply one or more filters to a query. Learn more about Shopify API search syntax.

Anchor to created_at
•time
•id

Filter by id range.

Example:

  • id:1234
  • id:>=1234
  • id:<=1234
•Boolean
Default:false

Reverse the order of the underlying list.


Anchor to limitedPendingOrderCountlimitedPendingOrderCount
•LimitedPendingOrderCount!
non-nullDeprecated
•LocationConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Boolean
Default:false

Whether to include the locations that are deactivated.

•Boolean
Default:false

Whether to include the legacy locations of fulfillment services.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
activestring
address1string
address2string
citystring
countrystring
created_attime
geolocatedboolean
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
legacyboolean
location_idid
namestring
pickup_in_storestring- enabled
- disabled
provincestring
zipstring
You can apply one or more filters to a query. Learn more about [Shopify API
search syntax](https://shopify.dev/api/usage/search-syntax).
•Boolean
Default:false

Reverse the order of the underlying list.

•LocationSortKeys
Default:NAME

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.


Anchor to metafieldDefinitionsmetafieldDefinitions
•MetafieldDefinitionConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

Filter metafield definitions by namespace.

•MetafieldDefinitionPinnedStatus
Default:ANY

Filter by the definition's pinned status.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
created_attimeFilter by the date and time when the metafield
definition was created.- created_at:>2020-10-21T23:39:20Z
-
created_at:<now
- created_at:<=2024
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
keystringFilter by the metafield definition key
field.- key:some-key
namespacestringFilter by the metafield definition namespace
field.- namespace:some-namespace
owner_typestringFilter by the metafield definition ownerType
field.- owner_type:PRODUCT
typestringFilter by the metafield definition type
field.- type:single_line_text_field
updated_attimeFilter by the date and time when the metafield
definition was last updated.- updated_at:>2020-10-21T23:39:20Z
  • updated_at:<now
    - updated_at:<=2024 | You can apply one or more filters to a query. Learn more about Shopify API search syntax.
•Boolean
Default:false

Reverse the order of the underlying list.

•MetafieldDefinitionSortKeys
Default:ID

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.


•OrderConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
cart_tokenstringFilter by the cart token's unique value to track
abandoned cart conversions or troubleshoot checkout issues. The token
references the cart that's associated with an order.-
cart_token:abc123
channelstringFilter by the channel information handle
(ChannelInformation.channelDefinition.handle) field.-
channel:web
- channel:web,pos
channel_ididFilter by the channel id
field.- channel_id:123
chargeback_statusstringFilter by the order's chargeback status. A
chargeback occurs when a customer questions the legitimacy of a charge with
their financial institution.- accepted
- charge_refunded
-
lost
- needs_response
- under_review
- won
-
chargeback_status:accepted
checkout_tokenstringFilter by the checkout token's unique value to
analyze conversion funnels or resolve payment issues. The checkout token's
value references the checkout that's associated with an order.-
checkout_token:abc123
confirmation_numberstringFilter by the randomly generated
alpha-numeric identifier for an order that can be displayed to the customer
instead of the sequential order name. This value isn't guaranteed to be
unique.- confirmation_number:ABC123
created_attimeFilter by the date and time when the order was created
in Shopify's system.- created_at:2020-10-21T23:39:20Z
-
created_at:<now
- created_at:<=2024
credit_card_last4stringFilter by the last four digits of the payment
card that was used to pay for the order. This filter matches only the last
four digits of the card for heightened security.-
credit_card_last4:1234
current_total_pricefloatFilter by the current total price of the
order in the shop currency, including any returns/refunds/removals. This
filter supports both exact values and ranges.-
current_total_price:10
- `current_total_price:>=5.00
current_total_price:<=20.99`
customer_ididFilter orders by the customer id
field.- customer_id:123
delivery_methodstringFilter by the delivery methodType
field.- shipping
- pick-up
- retail
- local
-
pickup-point
- none
- delivery_method:shipping
discount_codestringFilter by the case-insensitive discount code that
was applied to the order at checkout. Limited to the first discount code
used on an order. Maximum characters: 255.- discount_code:ABC123
emailstringFilter by the email address that's associated with the
order to provide customer support or analyze purchasing patterns.-
email:example@shopify.com
financial_statusstringFilter by the order displayFinancialStatus
field.- paid
- pending
- authorized
-
partially_paid
- partially_refunded
- refunded
-
voided
- expired
- financial_status:authorized
fraud_protection_levelstringFilter by the level of fraud protection
that's applied to the order. Use this filter to manage risk or handle
disputes.- fully_protected
- partially_protected
-
not_protected
- pending
- not_eligible
-
not_available- fraud_protection_level:fully_protected
fulfillment_location_ididFilter by the fulfillment location id
(Fulfillment.location.id) field.- fulfillment_location_id:123
fulfillment_statusstringFilter by the displayFulfillmentStatus
field to prioritize shipments or monitor order processing.-
unshipped
- shipped
- fulfilled
- partial
-
scheduled
- on_hold
- unfulfilled
- request_declined
- fulfillment_status:fulfilled
gatewaystringFilter by the paymentGatewayNames
field. Use this filter to find orders that were processed through specific
payment providers like Shopify Payments, PayPal, or other custom payment
gateways.- gateway:shopify_payments
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
location_ididFilter by the location id
that's associated with the order to view and manage orders for specific
locations. For POS orders, locations must be defined in the Shopify admin
under Settings > Locations. If no ID is provided, then the primary
location of the shop is returned.- location_id:123
metafields.{namespace}.{key}mixedFilters 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"
namestringFilter by the order name
field.- name:1001-A
payment_idstringFilter by the payment ID that's associated with the
order to reconcile financial records or troubleshoot payment issues.-
payment_id:abc123
payment_provider_ididFilter by the ID of the payment provider that's
associated with the order to manage payment methods or troubleshoot
transactions.- payment_provider_id:123
po_numberstringFilter by the order poNumber
field.- po_number:P01001
processed_attimeFilter by the order processedAt
field.- processed_at:2021-01-01T00:00:00Z
reference_location_ididFilter by the ID of a location that's
associated with the order, such as locations from fulfillments, refunds, or
the shop's primary location.- reference_location_id:123
return_statusstringFilter by the order's returnStatus
to monitor returns processing and track which orders have active returns.
  • return_requested
    - in_progress
    - inspection_complete
  • returned
    - return_failed
    - no_return | | - return_status:in_progress | | risk_level | string | Filter by the order risk assessment riskLevel field. | - high
    - medium
    - low
    - none
    - pending | | - risk_level:high | | sales_channel | string | Filter by the sales channel where the order was made to analyze performance or manage fulfillment processes. | | | - sales_channel: some_sales_channel | | sku | string | Filter by the product variant sku field. Learn more about SKUs. | | | - sku:ABC123 | | source_identifier | string | Filter by the ID of the order placed on the originating platform, such as a unique POS or third-party identifier. This value doesn't correspond to the Shopify ID that's generated from a completed draft order. | | | - source_identifier:1234-12-1000 | | source_name | string | Filter by the platform where the order was placed to distinguish between web orders, POS sales, draft orders, or third-party channels. Use this filter to analyze sales performance across different ordering methods. | | | - source_name:web
    - source_name:shopify_draft_order | | status | string | Filter by the order's status to manage workflows or analyze the order lifecycle. | - open
    - closed
    - cancelled
    - not_closed | | - status:open | | subtotal_line_items_quantity | string | Filter by the total number of items across all line items in an order. This filter supports both exact values and ranges, and is useful for identifying bulk orders or analyzing purchase volume patterns. | | | - subtotal_line_items_quantity:10
    - subtotal_line_items_quantity:5..20 | | 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 | | test | boolean | Filter by test orders. Test orders are made using the Shopify Bogus Gateway or a payment provider with test mode enabled. | | | - test:true | | total_weight | string | Filter by the order weight. This filter supports both exact values and ranges, and is to be used to filter orders by the total weight of all items (excluding packaging). It takes a unit of measurement as a suffix. It accepts the following units: g, kg, lb, oz. | | | - total_weight:10.5kg
    - total_weight:>=5g total_weight:<=20g
  • total_weight:.5 lb | | updated_at | time | Filter by the date and time when the order was last updated in Shopify's system. | | | - updated_at:2020-10-21T23:39:20Z
  • updated_at:<now
    - updated_at:<=2024 | You can apply one or more filters to a query. Learn more about Shopify API search syntax.
•Boolean
Default:false

Reverse the order of the underlying list.

•OrderSortKeys
Default:PROCESSED_AT

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.


•ImageConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•CropRegion
Deprecated
•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Int
Deprecated
•Int
Deprecated
•Boolean
Default:false

Reverse the order of the underlying list.

•Int
DeprecatedDefault:1
•ProductImageSortKeys
Default:CREATED_AT

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.


•ProductConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
barcodestringFilter by the product variant barcode
field.- barcode:ABC-abc-1234
bundlesbooleanFilter by a [product
bundle](https://shopify.dev/docs/apps/build/product-merchandising/bundles).
A product bundle is a set of two or more related products, which are
commonly offered at a discount.- bundles:true
category_idstringFilter 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_ididFilter by the collection id
field.- collection_id:108179161409
combined_listing_rolestringFilter by the role of the product in a combined listing.
- parent
- child
- no_role
-
combined_listing_role:parent
created_attimeFilter 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_ididFilter by the delivery profile id
field.- delivery_profile_id:108179161409
error_feedbackstringFilter by products with publishing errors.
gift_cardbooleanFilter by the product isGiftCard
field.- gift_card:true
handlestringFilter by a comma-separated list of product handles.
- handle:the-minimal-snowboard
has_only_compositesbooleanFilter by products that have only
composite variants.- has_only_composites:true
has_only_default_variantbooleanFilter 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_componentsbooleanFilter by products that have
variants with associated components.-
has_variant_with_components:true
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
inventory_totalintegerFilter by inventory count.-
inventory_total:0
- inventory_total:>150
-
inventory_total:>=200
is_price_reducedbooleanFilter by products that have a reduced price.
For more information, refer to the CollectionRule
object.- is_price_reduced:true
metafields.{namespace}.{key}mixedFilters 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_somewherebooleanFilter by products that are out of
stock in at least one location.- out_of_stock_somewhere:true
pricebigdecimalFilter by the product variant price
field.- price:100.57
product_configuration_ownerstringFilter by the app
id
field.- product_configuration_owner:10001
product_publication_statusstringFilter 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<br/> - * {channel_app_id}-needs_action`
-
* {channel_app_id}-awaiting_review
- `*
{channel_app_id}-published<br/> - * {channel_app_id}-demoted<br/> - *
{channel_app_id}-scheduled<br/> - *
{channel_app_id}-provisionally_published`-
product_publication_status:189769876-approved
product_typestringFilter by a comma-separated list of [product
types](https://help.shopify.com/manual/products/details/product-type).
  • 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.
•Boolean
Default:false

Reverse the order of the underlying list.

•ID

The ID of a saved search. The search’s query string is used as the query argument.

•ProductSortKeys
Default:ID

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.


•StringConnection!
non-nullDeprecated

Arguments

•Int!
required

The first n elements from the paginated list.


•StringConnection!
non-nullDeprecated

Arguments

•Int!
required

The first n elements from the paginated list.


•ProductVariantConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•String

A filter made up of terms, connectives, modifiers, and comparators.

nametypedescriptionacceptable_valuesdefault_valueexample_use
defaultstringFilter by a case-insensitive search of multiple fields
in a document.- query=Bob Norman
- query=title:green hoodie
barcodestringFilter by the product variant barcode
field.- barcode:ABC-abc-123
collectionstringFilter by the ID of the collection
that the product variant belongs to.- collection:465903092033
delivery_profile_ididFilter by the product variant delivery profile ID
(ProductVariant.deliveryProfile.id).-
delivery_profile_id:108179161409
exclude_compositebooleanFilter by product variants that aren't composites.- exclude_composite:true
exclude_variants_with_componentsbooleanFilter by whether there are components
that are associated with the product variants in a bundle.-
exclude_variants_with_components:true
gift_cardbooleanFilter by the product isGiftCard
field.- gift_card:true
ididFilter by id range.- id:1234
- id:>=1234
- id:<=1234
inventory_quantityintegerFilter by an aggregate of inventory across
all locations where the product variant is stocked.-
inventory_quantity:10
location_ididFilter by the [location
ID](https://shopify.dev/api/admin-graphql/latest/objects/Location#field-id)
for the product variant.- location_id:88511152449
managedbooleanFilter by whether there is fulfillment service
tracking associated with the product variants.- managed:true
managed_bystringFilter by the fulfillment service that tracks the
number of items in stock for the product variant.-
managed_by:shopify
option1stringFilter by a custom property that a shop owner uses to
define product variants.- option1:small
option2stringFilter by a custom property that a shop owner uses to
define product variants.- option2:medium
option3stringFilter by a custom property that a shop owner uses to
define product variants.- option3:large
product_ididFilter by the product id
field.- product_id:8474977763649
product_idsstringFilter by a comma-separated list of product IDs.
- product_ids:8474977763649,8474977796417
product_publication_statusstringFilter 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<br/> - * {channel_app_id}-needs_action`
-
* {channel_app_id}-awaiting_review
- `*
{channel_app_id}-published<br/> - * {channel_app_id}-demoted<br/> - *
{channel_app_id}-scheduled<br/> - *
{channel_app_id}-provisionally_published`-
product_publication_status:189769876-approved
product_statusstringFilter by a comma-separated list of product statuses.
- product_status:ACTIVE,DRAFT
product_typestringFilter by the product type that's associated with
the product variants.- product_type:snowboard
-
product_type:snowboard,skis
- `product_type:snowboard OR
product_type:skis`
publishable_statusstringDeprecated: 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](https://shopify.dev/api/admin-graphql/latest/objects/Channel#app-price)
(Channel.app.id) and one of the valid status values.- `*
{channel_app_id}-unset<br/> - * {channel_app_id}-pending<br/> - *
{channel_app_id}-approved<br/> - * {channel_app_id}-not_approved`-
publishable_status:580111-unset
- publishable_status:580111-pending
published_statusstringFilter 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](https://shopify.dev/api/admin-graphql/latest/objects/Channel#app-price)
(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,Icedevil
    - vendor:Snowdevil OR vendor:Icedevil | You can apply one or more filters to a query. Learn more about Shopify API search syntax.
•Boolean
Default:false

Reverse the order of the underlying list.

•ProductVariantSortKeys
Default:ID

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.


•StringConnection!
non-nullDeprecated

Arguments

•Int!
required

The first n elements from the paginated list.


•Int!
non-nullDeprecated
•StaffMemberConnection!
non-nullDeprecated

Arguments

•String

The elements that come after the specified cursor.

•String

The elements that come before the specified cursor.

•Int

The first n elements from the paginated list.

•Int

The last n elements from the paginated list.

•Boolean
Default:false

Reverse the order of the underlying list.


•URL!
non-nullDeprecated
•OBJECT

Policy that a merchant has configured for their store, such as their refund or privacy policy.

•HTML!
non-null

The text of the policy. The maximum size is 512kb.

•DateTime!
non-null

The date and time (ISO 8601 format) when the policy was created.

•ID!
non-null

A globally-unique ID.

•String!
non-null

The translated title of the policy. For example, Refund Policy or Politique de remboursement.

•[Translation!]!
non-null

The published translations associated with the resource.

Arguments

•String!
required

Filters translations locale.

•ID

Filters translations by market ID. Use this argument to retrieve content specific to a market.


•ShopPolicyType!
non-null

The shop policy type.

•DateTime!
non-null

The date and time (ISO 8601 format) when the policy was last modified.

•URL!
non-null

The public URL of the policy.


Was this section helpful?