@shopify/hydrogen-react 2026.1.2 → 2026.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/customer-account.schema.json +1 -1
  2. package/dist/browser-dev/CartLineProvider.mjs.map +1 -1
  3. package/dist/browser-dev/CartProvider.mjs.map +1 -1
  4. package/dist/browser-dev/Image.mjs.map +1 -1
  5. package/dist/browser-dev/ModelViewer.mjs.map +1 -1
  6. package/dist/browser-dev/Money.mjs.map +1 -1
  7. package/dist/browser-dev/Video.mjs.map +1 -1
  8. package/dist/browser-dev/analytics-schema-custom-storefront-customer-tracking.mjs +1 -1
  9. package/dist/browser-dev/codegen.helpers.mjs.map +1 -1
  10. package/dist/browser-dev/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.mjs +151 -0
  11. package/dist/browser-dev/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.mjs.map +1 -0
  12. package/dist/browser-dev/optionValueDecoder.mjs.map +1 -1
  13. package/dist/browser-dev/{package.json.mjs → packages/hydrogen-react/package.json.mjs} +1 -1
  14. package/dist/browser-dev/storefront-api-constants.mjs +1 -1
  15. package/dist/browser-dev/storefront-api-constants.mjs.map +1 -1
  16. package/dist/browser-dev/useCartAPIStateMachine.mjs +8 -8
  17. package/dist/browser-dev/useCartAPIStateMachine.mjs.map +1 -1
  18. package/dist/browser-dev/useCartActions.mjs.map +1 -1
  19. package/dist/browser-dev/useMachine.mjs +4 -4
  20. package/dist/browser-dev/useMachine.mjs.map +1 -1
  21. package/dist/browser-dev/useMoney.mjs.map +1 -1
  22. package/dist/browser-prod/CartLineProvider.mjs.map +1 -1
  23. package/dist/browser-prod/CartProvider.mjs.map +1 -1
  24. package/dist/browser-prod/Image.mjs.map +1 -1
  25. package/dist/browser-prod/ModelViewer.mjs.map +1 -1
  26. package/dist/browser-prod/Money.mjs.map +1 -1
  27. package/dist/browser-prod/Video.mjs.map +1 -1
  28. package/dist/browser-prod/analytics-schema-custom-storefront-customer-tracking.mjs +1 -1
  29. package/dist/browser-prod/codegen.helpers.mjs.map +1 -1
  30. package/dist/browser-prod/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.mjs +151 -0
  31. package/dist/browser-prod/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.mjs.map +1 -0
  32. package/dist/browser-prod/optionValueDecoder.mjs.map +1 -1
  33. package/dist/{node-dev → browser-prod/packages/hydrogen-react}/package.json.mjs +1 -1
  34. package/dist/browser-prod/storefront-api-constants.mjs +1 -1
  35. package/dist/browser-prod/storefront-api-constants.mjs.map +1 -1
  36. package/dist/browser-prod/useCartAPIStateMachine.mjs +8 -8
  37. package/dist/browser-prod/useCartAPIStateMachine.mjs.map +1 -1
  38. package/dist/browser-prod/useCartActions.mjs.map +1 -1
  39. package/dist/browser-prod/useMachine.mjs +4 -4
  40. package/dist/browser-prod/useMachine.mjs.map +1 -1
  41. package/dist/browser-prod/useMoney.mjs.map +1 -1
  42. package/dist/node-dev/CartLineProvider.js.map +1 -1
  43. package/dist/node-dev/CartLineProvider.mjs.map +1 -1
  44. package/dist/node-dev/CartProvider.js.map +1 -1
  45. package/dist/node-dev/CartProvider.mjs.map +1 -1
  46. package/dist/node-dev/Image.js.map +1 -1
  47. package/dist/node-dev/Image.mjs.map +1 -1
  48. package/dist/node-dev/ModelViewer.js.map +1 -1
  49. package/dist/node-dev/ModelViewer.mjs.map +1 -1
  50. package/dist/node-dev/Money.js.map +1 -1
  51. package/dist/node-dev/Money.mjs.map +1 -1
  52. package/dist/node-dev/Video.js.map +1 -1
  53. package/dist/node-dev/Video.mjs.map +1 -1
  54. package/dist/node-dev/analytics-schema-custom-storefront-customer-tracking.js +1 -1
  55. package/dist/node-dev/analytics-schema-custom-storefront-customer-tracking.mjs +1 -1
  56. package/dist/node-dev/codegen.helpers.js.map +1 -1
  57. package/dist/node-dev/codegen.helpers.mjs.map +1 -1
  58. package/dist/node-dev/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.js +150 -0
  59. package/dist/node-dev/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.js.map +1 -0
  60. package/dist/node-dev/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.mjs +151 -0
  61. package/dist/node-dev/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.mjs.map +1 -0
  62. package/dist/node-dev/optionValueDecoder.js.map +1 -1
  63. package/dist/node-dev/optionValueDecoder.mjs.map +1 -1
  64. package/dist/node-dev/{package.json.js → packages/hydrogen-react/package.json.js} +1 -1
  65. package/dist/{browser-prod → node-dev/packages/hydrogen-react}/package.json.mjs +1 -1
  66. package/dist/node-dev/storefront-api-constants.js +1 -1
  67. package/dist/node-dev/storefront-api-constants.js.map +1 -1
  68. package/dist/node-dev/storefront-api-constants.mjs +1 -1
  69. package/dist/node-dev/storefront-api-constants.mjs.map +1 -1
  70. package/dist/node-dev/useCartAPIStateMachine.js +8 -8
  71. package/dist/node-dev/useCartAPIStateMachine.js.map +1 -1
  72. package/dist/node-dev/useCartAPIStateMachine.mjs +8 -8
  73. package/dist/node-dev/useCartAPIStateMachine.mjs.map +1 -1
  74. package/dist/node-dev/useCartActions.js.map +1 -1
  75. package/dist/node-dev/useCartActions.mjs.map +1 -1
  76. package/dist/node-dev/useMachine.js +4 -4
  77. package/dist/node-dev/useMachine.js.map +1 -1
  78. package/dist/node-dev/useMachine.mjs +4 -4
  79. package/dist/node-dev/useMachine.mjs.map +1 -1
  80. package/dist/node-dev/useMoney.js.map +1 -1
  81. package/dist/node-dev/useMoney.mjs.map +1 -1
  82. package/dist/node-prod/CartLineProvider.js.map +1 -1
  83. package/dist/node-prod/CartLineProvider.mjs.map +1 -1
  84. package/dist/node-prod/CartProvider.js.map +1 -1
  85. package/dist/node-prod/CartProvider.mjs.map +1 -1
  86. package/dist/node-prod/Image.js.map +1 -1
  87. package/dist/node-prod/Image.mjs.map +1 -1
  88. package/dist/node-prod/ModelViewer.js.map +1 -1
  89. package/dist/node-prod/ModelViewer.mjs.map +1 -1
  90. package/dist/node-prod/Money.js.map +1 -1
  91. package/dist/node-prod/Money.mjs.map +1 -1
  92. package/dist/node-prod/Video.js.map +1 -1
  93. package/dist/node-prod/Video.mjs.map +1 -1
  94. package/dist/node-prod/analytics-schema-custom-storefront-customer-tracking.js +1 -1
  95. package/dist/node-prod/analytics-schema-custom-storefront-customer-tracking.mjs +1 -1
  96. package/dist/node-prod/codegen.helpers.js.map +1 -1
  97. package/dist/node-prod/codegen.helpers.mjs.map +1 -1
  98. package/dist/node-prod/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.js +150 -0
  99. package/dist/node-prod/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.js.map +1 -0
  100. package/dist/node-prod/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.mjs +151 -0
  101. package/dist/node-prod/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.mjs.map +1 -0
  102. package/dist/node-prod/optionValueDecoder.js.map +1 -1
  103. package/dist/node-prod/optionValueDecoder.mjs.map +1 -1
  104. package/dist/node-prod/{package.json.js → packages/hydrogen-react/package.json.js} +1 -1
  105. package/dist/node-prod/{package.json.mjs → packages/hydrogen-react/package.json.mjs} +1 -1
  106. package/dist/node-prod/storefront-api-constants.js +1 -1
  107. package/dist/node-prod/storefront-api-constants.js.map +1 -1
  108. package/dist/node-prod/storefront-api-constants.mjs +1 -1
  109. package/dist/node-prod/storefront-api-constants.mjs.map +1 -1
  110. package/dist/node-prod/useCartAPIStateMachine.js +8 -8
  111. package/dist/node-prod/useCartAPIStateMachine.js.map +1 -1
  112. package/dist/node-prod/useCartAPIStateMachine.mjs +8 -8
  113. package/dist/node-prod/useCartAPIStateMachine.mjs.map +1 -1
  114. package/dist/node-prod/useCartActions.js.map +1 -1
  115. package/dist/node-prod/useCartActions.mjs.map +1 -1
  116. package/dist/node-prod/useMachine.js +4 -4
  117. package/dist/node-prod/useMachine.js.map +1 -1
  118. package/dist/node-prod/useMachine.mjs +4 -4
  119. package/dist/node-prod/useMachine.mjs.map +1 -1
  120. package/dist/node-prod/useMoney.js.map +1 -1
  121. package/dist/node-prod/useMoney.mjs.map +1 -1
  122. package/dist/types/CartLineProvider.d.ts +1 -1
  123. package/dist/types/CartProvider.d.ts +2 -2
  124. package/dist/types/Image.d.ts +1 -1
  125. package/dist/types/ModelViewer.d.ts +1 -1
  126. package/dist/types/Money.d.ts +4 -4
  127. package/dist/types/Video.d.ts +1 -1
  128. package/dist/types/codegen.helpers.d.ts +2 -2
  129. package/dist/types/customer-account-api-types.d.ts +23 -1
  130. package/dist/types/optionValueDecoder.d.ts +2 -2
  131. package/dist/types/storefront-api-constants.d.ts +1 -1
  132. package/dist/types/storefront-api-types.d.ts +1467 -443
  133. package/dist/types/useCartAPIStateMachine.d.ts +2 -2
  134. package/dist/types/useCartActions.d.ts +2 -2
  135. package/dist/types/useMoney.d.ts +2 -2
  136. package/dist/umd/hydrogen-react.dev.js +2 -2
  137. package/dist/umd/hydrogen-react.dev.js.map +1 -1
  138. package/dist/umd/hydrogen-react.prod.js +2 -2
  139. package/dist/umd/hydrogen-react.prod.js.map +1 -1
  140. package/package.json +3 -3
  141. package/storefront.schema.json +1 -1
  142. /package/dist/browser-dev/{package.json.mjs.map → packages/hydrogen-react/package.json.mjs.map} +0 -0
  143. /package/dist/browser-prod/{package.json.mjs.map → packages/hydrogen-react/package.json.mjs.map} +0 -0
  144. /package/dist/node-dev/{package.json.js.map → packages/hydrogen-react/package.json.js.map} +0 -0
  145. /package/dist/node-dev/{package.json.mjs.map → packages/hydrogen-react/package.json.mjs.map} +0 -0
  146. /package/dist/node-prod/{package.json.js.map → packages/hydrogen-react/package.json.js.map} +0 -0
  147. /package/dist/node-prod/{package.json.mjs.map → packages/hydrogen-react/package.json.mjs.map} +0 -0
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * THIS FILE IS AUTO-GENERATED, DO NOT EDIT
3
- * Based on Storefront API 2026-01
3
+ * Based on Storefront API 2026-04
4
4
  * If changes need to happen to the types defined in this file, then generally the Storefront API needs to update. After it's updated, you can run `npm run graphql-types`.
5
5
  * Except custom Scalars, which are defined in the `codegen.ts` file
6
6
  */
@@ -38,8 +38,9 @@ export type Scalars = {
38
38
  };
39
39
 
40
40
  /**
41
- * A version of the API, as defined by [Shopify API versioning](https://shopify.dev/api/usage/versioning).
42
- * Versions are commonly referred to by their handle (for example, `2021-10`).
41
+ * A version of the Shopify API. Each version has a unique handle in date-based format (YYYY-MM) or `unstable` for the development version.
42
+ *
43
+ * Shopify guarantees supported versions are stable. Unsupported versions include unstable and release candidate versions. Use the [`publicApiVersions`](https://shopify.dev/docs/api/storefront/current/queries/publicApiVersions) query to retrieve all available versions. Learn more about [Shopify API versioning](https://shopify.dev/docs/api/usage/versioning).
43
44
  *
44
45
  */
45
46
  export type ApiVersion = {
@@ -111,7 +112,12 @@ export type AppliedGiftCard = Node & {
111
112
  presentmentAmountUsed: MoneyV2;
112
113
  };
113
114
 
114
- /** An article in an online store blog. */
115
+ /**
116
+ * A post that belongs to a [`Blog`](https://shopify.dev/docs/api/storefront/current/objects/Blog). Each article includes content with optional HTML formatting, an excerpt for previews, [`ArticleAuthor`](https://shopify.dev/docs/api/storefront/current/objects/ArticleAuthor) information, and an associated [`Image`](https://shopify.dev/docs/api/storefront/current/objects/Image).
117
+ *
118
+ * Articles can be organized with tags and include [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) metadata. You can manage [comments](https://shopify.dev/docs/api/storefront/current/objects/Comment) when the blog's comment policy enables them.
119
+ *
120
+ */
115
121
  export type Article = HasMetafields &
116
122
  Node &
117
123
  OnlineStorePublishable &
@@ -163,7 +169,12 @@ export type Article = HasMetafields &
163
169
  trackingParameters?: Maybe<Scalars['String']['output']>;
164
170
  };
165
171
 
166
- /** An article in an online store blog. */
172
+ /**
173
+ * A post that belongs to a [`Blog`](https://shopify.dev/docs/api/storefront/current/objects/Blog). Each article includes content with optional HTML formatting, an excerpt for previews, [`ArticleAuthor`](https://shopify.dev/docs/api/storefront/current/objects/ArticleAuthor) information, and an associated [`Image`](https://shopify.dev/docs/api/storefront/current/objects/Image).
174
+ *
175
+ * Articles can be organized with tags and include [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) metadata. You can manage [comments](https://shopify.dev/docs/api/storefront/current/objects/Comment) when the blog's comment policy enables them.
176
+ *
177
+ */
167
178
  export type ArticleCommentsArgs = {
168
179
  after?: InputMaybe<Scalars['String']['input']>;
169
180
  before?: InputMaybe<Scalars['String']['input']>;
@@ -172,23 +183,43 @@ export type ArticleCommentsArgs = {
172
183
  reverse?: InputMaybe<Scalars['Boolean']['input']>;
173
184
  };
174
185
 
175
- /** An article in an online store blog. */
186
+ /**
187
+ * A post that belongs to a [`Blog`](https://shopify.dev/docs/api/storefront/current/objects/Blog). Each article includes content with optional HTML formatting, an excerpt for previews, [`ArticleAuthor`](https://shopify.dev/docs/api/storefront/current/objects/ArticleAuthor) information, and an associated [`Image`](https://shopify.dev/docs/api/storefront/current/objects/Image).
188
+ *
189
+ * Articles can be organized with tags and include [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) metadata. You can manage [comments](https://shopify.dev/docs/api/storefront/current/objects/Comment) when the blog's comment policy enables them.
190
+ *
191
+ */
176
192
  export type ArticleContentArgs = {
177
193
  truncateAt?: InputMaybe<Scalars['Int']['input']>;
178
194
  };
179
195
 
180
- /** An article in an online store blog. */
196
+ /**
197
+ * A post that belongs to a [`Blog`](https://shopify.dev/docs/api/storefront/current/objects/Blog). Each article includes content with optional HTML formatting, an excerpt for previews, [`ArticleAuthor`](https://shopify.dev/docs/api/storefront/current/objects/ArticleAuthor) information, and an associated [`Image`](https://shopify.dev/docs/api/storefront/current/objects/Image).
198
+ *
199
+ * Articles can be organized with tags and include [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) metadata. You can manage [comments](https://shopify.dev/docs/api/storefront/current/objects/Comment) when the blog's comment policy enables them.
200
+ *
201
+ */
181
202
  export type ArticleExcerptArgs = {
182
203
  truncateAt?: InputMaybe<Scalars['Int']['input']>;
183
204
  };
184
205
 
185
- /** An article in an online store blog. */
206
+ /**
207
+ * A post that belongs to a [`Blog`](https://shopify.dev/docs/api/storefront/current/objects/Blog). Each article includes content with optional HTML formatting, an excerpt for previews, [`ArticleAuthor`](https://shopify.dev/docs/api/storefront/current/objects/ArticleAuthor) information, and an associated [`Image`](https://shopify.dev/docs/api/storefront/current/objects/Image).
208
+ *
209
+ * Articles can be organized with tags and include [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) metadata. You can manage [comments](https://shopify.dev/docs/api/storefront/current/objects/Comment) when the blog's comment policy enables them.
210
+ *
211
+ */
186
212
  export type ArticleMetafieldArgs = {
187
213
  key: Scalars['String']['input'];
188
214
  namespace?: InputMaybe<Scalars['String']['input']>;
189
215
  };
190
216
 
191
- /** An article in an online store blog. */
217
+ /**
218
+ * A post that belongs to a [`Blog`](https://shopify.dev/docs/api/storefront/current/objects/Blog). Each article includes content with optional HTML formatting, an excerpt for previews, [`ArticleAuthor`](https://shopify.dev/docs/api/storefront/current/objects/ArticleAuthor) information, and an associated [`Image`](https://shopify.dev/docs/api/storefront/current/objects/Image).
219
+ *
220
+ * Articles can be organized with tags and include [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) metadata. You can manage [comments](https://shopify.dev/docs/api/storefront/current/objects/Comment) when the blog's comment policy enables them.
221
+ *
222
+ */
192
223
  export type ArticleMetafieldsArgs = {
193
224
  identifiers: Array<HasMetafieldsIdentifier>;
194
225
  };
@@ -255,7 +286,12 @@ export type ArticleSortKeys =
255
286
  /** Sort by the `updated_at` value. */
256
287
  | 'UPDATED_AT';
257
288
 
258
- /** Represents a generic custom attribute, such as whether an order is a customer's first. */
289
+ /**
290
+ * A custom key-value pair for storing additional information on [carts](https://shopify.dev/docs/api/storefront/current/objects/Cart), [cart lines](https://shopify.dev/docs/api/storefront/current/objects/CartLine), [orders](https://shopify.dev/docs/api/storefront/current/objects/Order), and [order line items](https://shopify.dev/docs/api/storefront/current/objects/OrderLineItem). Common uses include gift wrapping requests, customer notes, and tracking whether a customer is a first-time buyer.
291
+ *
292
+ * Attributes set on a cart carry over to the resulting order after checkout. Use the [`cartAttributesUpdate`](https://shopify.dev/docs/api/storefront/current/mutations/cartAttributesUpdate) mutation to add or modify cart attributes. For a step-by-step guide, see [managing carts with the Storefront API](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/cart/manage).
293
+ *
294
+ */
259
295
  export type Attribute = {
260
296
  __typename?: 'Attribute';
261
297
  /**
@@ -270,7 +306,10 @@ export type Attribute = {
270
306
  value?: Maybe<Scalars['String']['output']>;
271
307
  };
272
308
 
273
- /** The input fields for an attribute. */
309
+ /**
310
+ * A custom key-value pair that stores additional information on a [cart](https://shopify.dev/docs/api/storefront/current/objects/Cart) or [cart line](https://shopify.dev/docs/api/storefront/current/objects/CartLine). Attributes capture additional information like gift messages, special instructions, or custom order details. Learn more about [managing carts with the Storefront API](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/cart/manage).
311
+ *
312
+ */
274
313
  export type AttributeInput = {
275
314
  /** Key or name of the attribute. */
276
315
  key: Scalars['String']['input'];
@@ -279,7 +318,9 @@ export type AttributeInput = {
279
318
  };
280
319
 
281
320
  /**
282
- * Automatic discount applications capture the intentions of a discount that was automatically applied.
321
+ * An [automatic discount](https://help.shopify.com/manual/discounts/discount-methods/automatic-discounts) applied to a cart or checkout without requiring a discount code. Implements the [`DiscountApplication`](https://shopify.dev/docs/api/storefront/current/interfaces/DiscountApplication) interface.
322
+ *
323
+ * Includes the discount's title, value, and allocation details that specify how the discount amount distributes across entitled line items or shipping lines.
283
324
  *
284
325
  */
285
326
  export type AutomaticDiscountApplication = DiscountApplication & {
@@ -296,7 +337,12 @@ export type AutomaticDiscountApplication = DiscountApplication & {
296
337
  value: PricingValue;
297
338
  };
298
339
 
299
- /** Represents a cart line common fields. */
340
+ /**
341
+ * Defines the shared fields for items in a shopping cart. Implemented by [`CartLine`](https://shopify.dev/docs/api/storefront/current/objects/CartLine) for individual merchandise and [`ComponentizableCartLine`](https://shopify.dev/docs/api/storefront/current/objects/ComponentizableCartLine) for grouped merchandise like bundles.
342
+ *
343
+ * Each implementation includes the merchandise being purchased, quantity, cost breakdown, applied discounts, custom attributes, and any associated [`SellingPlan`](https://shopify.dev/docs/api/storefront/current/objects/SellingPlan).
344
+ *
345
+ */
300
346
  export type BaseCartLine = {
301
347
  /** An attribute associated with the cart line. */
302
348
  attribute?: Maybe<Attribute>;
@@ -325,7 +371,12 @@ export type BaseCartLine = {
325
371
  sellingPlanAllocation?: Maybe<SellingPlanAllocation>;
326
372
  };
327
373
 
328
- /** Represents a cart line common fields. */
374
+ /**
375
+ * Defines the shared fields for items in a shopping cart. Implemented by [`CartLine`](https://shopify.dev/docs/api/storefront/current/objects/CartLine) for individual merchandise and [`ComponentizableCartLine`](https://shopify.dev/docs/api/storefront/current/objects/ComponentizableCartLine) for grouped merchandise like bundles.
376
+ *
377
+ * Each implementation includes the merchandise being purchased, quantity, cost breakdown, applied discounts, custom attributes, and any associated [`SellingPlan`](https://shopify.dev/docs/api/storefront/current/objects/SellingPlan).
378
+ *
379
+ */
329
380
  export type BaseCartLineAttributeArgs = {
330
381
  key: Scalars['String']['input'];
331
382
  };
@@ -356,7 +407,12 @@ export type BaseCartLineEdge = {
356
407
  node: CartLine | ComponentizableCartLine;
357
408
  };
358
409
 
359
- /** An online store blog. */
410
+ /**
411
+ * A blog container for [`Article`](https://shopify.dev/docs/api/storefront/current/objects/Article) objects. Stores can have multiple blogs, for example to organize content by topic or purpose.
412
+ *
413
+ * Each blog provides access to its articles, contributing [`ArticleAuthor`](https://shopify.dev/docs/api/storefront/current/objects/ArticleAuthor) objects, and [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) information. You can retrieve articles individually [by handle](https://shopify.dev/docs/api/storefront/current/objects/Blog#field-Blog.fields.articleByHandle) or as a [paginated list](https://shopify.dev/docs/api/storefront/current/objects/Blog#field-Blog.fields.articles).
414
+ *
415
+ */
360
416
  export type Blog = HasMetafields &
361
417
  Node &
362
418
  OnlineStorePublishable & {
@@ -386,12 +442,22 @@ export type Blog = HasMetafields &
386
442
  title: Scalars['String']['output'];
387
443
  };
388
444
 
389
- /** An online store blog. */
445
+ /**
446
+ * A blog container for [`Article`](https://shopify.dev/docs/api/storefront/current/objects/Article) objects. Stores can have multiple blogs, for example to organize content by topic or purpose.
447
+ *
448
+ * Each blog provides access to its articles, contributing [`ArticleAuthor`](https://shopify.dev/docs/api/storefront/current/objects/ArticleAuthor) objects, and [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) information. You can retrieve articles individually [by handle](https://shopify.dev/docs/api/storefront/current/objects/Blog#field-Blog.fields.articleByHandle) or as a [paginated list](https://shopify.dev/docs/api/storefront/current/objects/Blog#field-Blog.fields.articles).
449
+ *
450
+ */
390
451
  export type BlogArticleByHandleArgs = {
391
452
  handle: Scalars['String']['input'];
392
453
  };
393
454
 
394
- /** An online store blog. */
455
+ /**
456
+ * A blog container for [`Article`](https://shopify.dev/docs/api/storefront/current/objects/Article) objects. Stores can have multiple blogs, for example to organize content by topic or purpose.
457
+ *
458
+ * Each blog provides access to its articles, contributing [`ArticleAuthor`](https://shopify.dev/docs/api/storefront/current/objects/ArticleAuthor) objects, and [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) information. You can retrieve articles individually [by handle](https://shopify.dev/docs/api/storefront/current/objects/Blog#field-Blog.fields.articleByHandle) or as a [paginated list](https://shopify.dev/docs/api/storefront/current/objects/Blog#field-Blog.fields.articles).
459
+ *
460
+ */
395
461
  export type BlogArticlesArgs = {
396
462
  after?: InputMaybe<Scalars['String']['input']>;
397
463
  before?: InputMaybe<Scalars['String']['input']>;
@@ -402,13 +468,23 @@ export type BlogArticlesArgs = {
402
468
  sortKey?: InputMaybe<ArticleSortKeys>;
403
469
  };
404
470
 
405
- /** An online store blog. */
471
+ /**
472
+ * A blog container for [`Article`](https://shopify.dev/docs/api/storefront/current/objects/Article) objects. Stores can have multiple blogs, for example to organize content by topic or purpose.
473
+ *
474
+ * Each blog provides access to its articles, contributing [`ArticleAuthor`](https://shopify.dev/docs/api/storefront/current/objects/ArticleAuthor) objects, and [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) information. You can retrieve articles individually [by handle](https://shopify.dev/docs/api/storefront/current/objects/Blog#field-Blog.fields.articleByHandle) or as a [paginated list](https://shopify.dev/docs/api/storefront/current/objects/Blog#field-Blog.fields.articles).
475
+ *
476
+ */
406
477
  export type BlogMetafieldArgs = {
407
478
  key: Scalars['String']['input'];
408
479
  namespace?: InputMaybe<Scalars['String']['input']>;
409
480
  };
410
481
 
411
- /** An online store blog. */
482
+ /**
483
+ * A blog container for [`Article`](https://shopify.dev/docs/api/storefront/current/objects/Article) objects. Stores can have multiple blogs, for example to organize content by topic or purpose.
484
+ *
485
+ * Each blog provides access to its articles, contributing [`ArticleAuthor`](https://shopify.dev/docs/api/storefront/current/objects/ArticleAuthor) objects, and [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) information. You can retrieve articles individually [by handle](https://shopify.dev/docs/api/storefront/current/objects/Blog#field-Blog.fields.articleByHandle) or as a [paginated list](https://shopify.dev/docs/api/storefront/current/objects/Blog#field-Blog.fields.articles).
486
+ *
487
+ */
412
488
  export type BlogMetafieldsArgs = {
413
489
  identifiers: Array<HasMetafieldsIdentifier>;
414
490
  };
@@ -455,7 +531,7 @@ export type BlogSortKeys =
455
531
  | 'TITLE';
456
532
 
457
533
  /**
458
- * The store's [branding configuration](https://help.shopify.com/en/manual/promoting-marketing/managing-brand-assets).
534
+ * The store's [branding configuration](https://help.shopify.com/manual/promoting-marketing/managing-brand-assets), such as logos, colors, and slogan. Access this through the [`Shop`](https://shopify.dev/docs/api/storefront/current/objects/Shop#field-Shop.fields.brand) object to display consistent brand assets across your storefront.
459
535
  *
460
536
  */
461
537
  export type Brand = {
@@ -499,7 +575,9 @@ export type BrandColors = {
499
575
  };
500
576
 
501
577
  /**
502
- * The input fields for obtaining the buyer's identity.
578
+ * Identifies a B2B buyer for the [`@inContext`](https://shopify.dev/docs/storefronts/headless/bring-your-own-stack/b2b) directive. Pass this input to contextualize Storefront API queries with data like B2B-specific pricing, quantity rules, and quantity price breaks.
579
+ *
580
+ * For B2B customers with access to multiple company locations, include the [`companyLocationId`](https://shopify.dev/docs/api/storefront/latest/input-objects/BuyerInput#fields-companyLocationId) to specify which location they're purchasing for.
503
581
  *
504
582
  */
505
583
  export type BuyerInput = {
@@ -525,10 +603,11 @@ export type CardBrand =
525
603
  | 'VISA';
526
604
 
527
605
  /**
528
- * A cart represents the merchandise that a buyer intends to purchase,
529
- * and the estimated cost associated with the cart. Learn how to
530
- * [interact with a cart](https://shopify.dev/custom-storefronts/internationalization/international-pricing)
531
- * during a customer's session.
606
+ * A cart represents the merchandise that a buyer intends to purchase, and the estimated cost associated with the cart, throughout a customer's session.
607
+ *
608
+ * Use the [`checkoutUrl`](https://shopify.dev/docs/api/storefront/current/objects/Cart#field-checkoutUrl) field to direct buyers to Shopify's web checkout to complete their purchase.
609
+ *
610
+ * Learn more about [interacting with carts](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/cart/manage).
532
611
  *
533
612
  */
534
613
  export type Cart = HasMetafields &
@@ -586,10 +665,11 @@ export type Cart = HasMetafields &
586
665
  };
587
666
 
588
667
  /**
589
- * A cart represents the merchandise that a buyer intends to purchase,
590
- * and the estimated cost associated with the cart. Learn how to
591
- * [interact with a cart](https://shopify.dev/custom-storefronts/internationalization/international-pricing)
592
- * during a customer's session.
668
+ * A cart represents the merchandise that a buyer intends to purchase, and the estimated cost associated with the cart, throughout a customer's session.
669
+ *
670
+ * Use the [`checkoutUrl`](https://shopify.dev/docs/api/storefront/current/objects/Cart#field-checkoutUrl) field to direct buyers to Shopify's web checkout to complete their purchase.
671
+ *
672
+ * Learn more about [interacting with carts](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/cart/manage).
593
673
  *
594
674
  */
595
675
  export type CartAttributeArgs = {
@@ -597,10 +677,11 @@ export type CartAttributeArgs = {
597
677
  };
598
678
 
599
679
  /**
600
- * A cart represents the merchandise that a buyer intends to purchase,
601
- * and the estimated cost associated with the cart. Learn how to
602
- * [interact with a cart](https://shopify.dev/custom-storefronts/internationalization/international-pricing)
603
- * during a customer's session.
680
+ * A cart represents the merchandise that a buyer intends to purchase, and the estimated cost associated with the cart, throughout a customer's session.
681
+ *
682
+ * Use the [`checkoutUrl`](https://shopify.dev/docs/api/storefront/current/objects/Cart#field-checkoutUrl) field to direct buyers to Shopify's web checkout to complete their purchase.
683
+ *
684
+ * Learn more about [interacting with carts](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/cart/manage).
604
685
  *
605
686
  */
606
687
  export type CartDeliveryGroupsArgs = {
@@ -613,10 +694,11 @@ export type CartDeliveryGroupsArgs = {
613
694
  };
614
695
 
615
696
  /**
616
- * A cart represents the merchandise that a buyer intends to purchase,
617
- * and the estimated cost associated with the cart. Learn how to
618
- * [interact with a cart](https://shopify.dev/custom-storefronts/internationalization/international-pricing)
619
- * during a customer's session.
697
+ * A cart represents the merchandise that a buyer intends to purchase, and the estimated cost associated with the cart, throughout a customer's session.
698
+ *
699
+ * Use the [`checkoutUrl`](https://shopify.dev/docs/api/storefront/current/objects/Cart#field-checkoutUrl) field to direct buyers to Shopify's web checkout to complete their purchase.
700
+ *
701
+ * Learn more about [interacting with carts](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/cart/manage).
620
702
  *
621
703
  */
622
704
  export type CartLinesArgs = {
@@ -628,10 +710,11 @@ export type CartLinesArgs = {
628
710
  };
629
711
 
630
712
  /**
631
- * A cart represents the merchandise that a buyer intends to purchase,
632
- * and the estimated cost associated with the cart. Learn how to
633
- * [interact with a cart](https://shopify.dev/custom-storefronts/internationalization/international-pricing)
634
- * during a customer's session.
713
+ * A cart represents the merchandise that a buyer intends to purchase, and the estimated cost associated with the cart, throughout a customer's session.
714
+ *
715
+ * Use the [`checkoutUrl`](https://shopify.dev/docs/api/storefront/current/objects/Cart#field-checkoutUrl) field to direct buyers to Shopify's web checkout to complete their purchase.
716
+ *
717
+ * Learn more about [interacting with carts](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/cart/manage).
635
718
  *
636
719
  */
637
720
  export type CartMetafieldArgs = {
@@ -640,10 +723,11 @@ export type CartMetafieldArgs = {
640
723
  };
641
724
 
642
725
  /**
643
- * A cart represents the merchandise that a buyer intends to purchase,
644
- * and the estimated cost associated with the cart. Learn how to
645
- * [interact with a cart](https://shopify.dev/custom-storefronts/internationalization/international-pricing)
646
- * during a customer's session.
726
+ * A cart represents the merchandise that a buyer intends to purchase, and the estimated cost associated with the cart, throughout a customer's session.
727
+ *
728
+ * Use the [`checkoutUrl`](https://shopify.dev/docs/api/storefront/current/objects/Cart#field-checkoutUrl) field to direct buyers to Shopify's web checkout to complete their purchase.
729
+ *
730
+ * Learn more about [interacting with carts](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/cart/manage).
647
731
  *
648
732
  */
649
733
  export type CartMetafieldsArgs = {
@@ -653,7 +737,10 @@ export type CartMetafieldsArgs = {
653
737
  /** A delivery address of the buyer that is interacting with the cart. */
654
738
  export type CartAddress = CartDeliveryAddress;
655
739
 
656
- /** The input fields to provide exactly one of a variety of delivery address types. */
740
+ /**
741
+ * Specifies a delivery address for a cart. Provide either a [`deliveryAddress`](https://shopify.dev/docs/api/storefront/current/input-objects/CartAddressInput#fields-deliveryAddress) with full address details, or a [`copyFromCustomerAddressId`](https://shopify.dev/docs/api/storefront/current/input-objects/CartAddressInput#fields-copyFromCustomerAddressId) to copy from an existing customer address. Used by [`CartSelectableAddressInput`](https://shopify.dev/docs/api/storefront/current/input-objects/CartSelectableAddressInput) and [`CartSelectableAddressUpdateInput`](https://shopify.dev/docs/api/storefront/current/input-objects/CartSelectableAddressUpdateInput).
742
+ *
743
+ */
657
744
  export type CartAddressInput = {
658
745
  /** Copies details from the customer address to an address on this cart. */
659
746
  copyFromCustomerAddressId?: InputMaybe<Scalars['ID']['input']>;
@@ -672,7 +759,10 @@ export type CartAttributesUpdatePayload = {
672
759
  warnings: Array<CartWarning>;
673
760
  };
674
761
 
675
- /** The discounts automatically applied to the cart line based on prerequisites that have been met. */
762
+ /**
763
+ * A discount allocation [that applies automatically](https://help.shopify.com/manual/discounts/discount-methods/automatic-discounts) to a cart line when configured conditions are met. Unlike [`CartCodeDiscountAllocation`](https://shopify.dev/docs/api/storefront/current/objects/CartCodeDiscountAllocation), automatic discounts don't require customers to enter a code.
764
+ *
765
+ */
676
766
  export type CartAutomaticDiscountAllocation = CartDiscountAllocation & {
677
767
  __typename?: 'CartAutomaticDiscountAllocation';
678
768
  /** The discount that have been applied on the cart line. */
@@ -696,7 +786,12 @@ export type CartBillingAddressUpdatePayload = {
696
786
  warnings: Array<CartWarning>;
697
787
  };
698
788
 
699
- /** Represents information about the buyer that is interacting with the cart. */
789
+ /**
790
+ * Contact information about the buyer interacting with a [cart](https://shopify.dev/docs/api/storefront/current/objects/Cart). The buyer's country determines [international pricing](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/markets/international-pricing) and should match their shipping address.
791
+ *
792
+ * For B2B scenarios, the [`purchasingCompany`](https://shopify.dev/docs/api/storefront/current/objects/CartBuyerIdentity#field-CartBuyerIdentity.fields.purchasingCompany) field identifies the company and location on whose behalf a business customer purchases. The [`preferences`](https://shopify.dev/docs/api/storefront/current/objects/CartBuyerIdentity#field-CartBuyerIdentity.fields.preferences) field stores delivery and wallet settings that prefill checkout fields to streamline the buying process.
793
+ *
794
+ */
700
795
  export type CartBuyerIdentity = {
701
796
  __typename?: 'CartBuyerIdentity';
702
797
  /** The country where the buyer is located. */
@@ -732,10 +827,12 @@ export type CartBuyerIdentity = {
732
827
  };
733
828
 
734
829
  /**
735
- * Specifies the input fields to update the buyer information associated with a cart.
736
- * Buyer identity is used to determine
737
- * [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing)
738
- * and should match the customer's shipping address.
830
+ * The input fields for identifying the buyer associated with a cart. Buyer identity determines [international pricing](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/markets/international-pricing) and should match the customer's shipping address.
831
+ *
832
+ * Used by [`cartCreate`](https://shopify.dev/docs/api/storefront/current/mutations/cartCreate) and [`cartBuyerIdentityUpdate`](https://shopify.dev/docs/api/storefront/current/mutations/cartBuyerIdentityUpdate) to set contact information, location, and checkout preferences.
833
+ *
834
+ * > Note:
835
+ * > Preferences prefill fields at checkout but don't sync back to the cart if overwritten.
739
836
  *
740
837
  */
741
838
  export type CartBuyerIdentityInput = {
@@ -791,7 +888,10 @@ export type CartClonePayload = {
791
888
  warnings: Array<CartWarning>;
792
889
  };
793
890
 
794
- /** The discount that has been applied to the cart line using a discount code. */
891
+ /**
892
+ * A discount allocation applied to a cart line when a customer enters a [discount code](https://help.shopify.com/manual/discounts/discount-methods/discount-codes).
893
+ *
894
+ */
795
895
  export type CartCodeDiscountAllocation = CartDiscountAllocation & {
796
896
  __typename?: 'CartCodeDiscountAllocation';
797
897
  /** The code used to apply the discount. */
@@ -855,9 +955,9 @@ export type CartCompletionSuccess = {
855
955
  };
856
956
 
857
957
  /**
858
- * The costs that the buyer will pay at checkout.
859
- * The cart cost uses [`CartBuyerIdentity`](https://shopify.dev/api/storefront/reference/cart/cartbuyeridentity) to determine
860
- * [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing).
958
+ * The estimated costs that a buyer will pay at checkout. The `Cart` object's [`cost`](https://shopify.dev/docs/api/storefront/current/objects/Cart#field-Cart.fields.cost) field returns this. The costs are subject to change and changes will be reflected at checkout. Costs reflect [international pricing](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/markets/international-pricing) based on the buyer's context.
959
+ *
960
+ * Amounts include the subtotal before taxes and cart-level discounts, the checkout charge amount excluding deferred payments, and the total. The subtotal and total amounts each include a corresponding boolean field indicating whether the value is an estimate.
861
961
  *
862
962
  */
863
963
  export type CartCost = {
@@ -1123,7 +1223,12 @@ export type CartDeliveryCoordinatesPreferenceInput = {
1123
1223
  longitude: Scalars['Float']['input'];
1124
1224
  };
1125
1225
 
1126
- /** Information about the options available for one or more line items to be delivered to a specific address. */
1226
+ /**
1227
+ * Groups cart line items that share the same delivery destination. Each group provides the available [`CartDeliveryOption`](https://shopify.dev/docs/api/storefront/current/objects/CartDeliveryOption) choices for that address, along with the customer's selected option.
1228
+ *
1229
+ * Access through the [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart) object's `deliveryGroups` field. Items are grouped by merchandise type (one-time purchase vs subscription), allowing different delivery methods for each.
1230
+ *
1231
+ */
1127
1232
  export type CartDeliveryGroup = {
1128
1233
  __typename?: 'CartDeliveryGroup';
1129
1234
  /** A list of cart lines for the delivery group. */
@@ -1140,7 +1245,12 @@ export type CartDeliveryGroup = {
1140
1245
  selectedDeliveryOption?: Maybe<CartDeliveryOption>;
1141
1246
  };
1142
1247
 
1143
- /** Information about the options available for one or more line items to be delivered to a specific address. */
1248
+ /**
1249
+ * Groups cart line items that share the same delivery destination. Each group provides the available [`CartDeliveryOption`](https://shopify.dev/docs/api/storefront/current/objects/CartDeliveryOption) choices for that address, along with the customer's selected option.
1250
+ *
1251
+ * Access through the [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart) object's `deliveryGroups` field. Items are grouped by merchandise type (one-time purchase vs subscription), allowing different delivery methods for each.
1252
+ *
1253
+ */
1144
1254
  export type CartDeliveryGroupCartLinesArgs = {
1145
1255
  after?: InputMaybe<Scalars['String']['input']>;
1146
1256
  before?: InputMaybe<Scalars['String']['input']>;
@@ -1199,7 +1309,12 @@ export type CartDeliveryInput = {
1199
1309
  addresses?: InputMaybe<Array<CartSelectableAddressInput>>;
1200
1310
  };
1201
1311
 
1202
- /** Information about a delivery option. */
1312
+ /**
1313
+ * A shipping or delivery choice available to customers during checkout. Each option includes a title, estimated cost, and delivery method type such as shipping or local pickup.
1314
+ *
1315
+ * Returned by the [`CartDeliveryGroup`](https://shopify.dev/docs/api/storefront/current/objects/CartDeliveryGroup) object's [`deliveryOptions`](https://shopify.dev/docs/api/storefront/current/objects/CartDeliveryGroup#field-CartDeliveryGroup.fields.deliveryOptions) field and [`selectedDeliveryOption`](https://shopify.dev/docs/api/storefront/current/objects/CartDeliveryGroup#field-CartDeliveryGroup.fields.selectedDeliveryOption) field.
1316
+ *
1317
+ */
1203
1318
  export type CartDeliveryOption = {
1204
1319
  __typename?: 'CartDeliveryOption';
1205
1320
  /** The code of the delivery option. */
@@ -1269,7 +1384,12 @@ export type CartDirectPaymentMethodInput = {
1269
1384
  sessionId: Scalars['String']['input'];
1270
1385
  };
1271
1386
 
1272
- /** The discounts that have been applied to the cart line. */
1387
+ /**
1388
+ * A common interface for querying discount allocations regardless of how the discount was applied ([automatic](https://help.shopify.com/manual/discounts/discount-methods/automatic-discounts), [code](https://help.shopify.com/manual/discounts/discount-methods/discount-codes), or custom). Each implementation represents a different discount source.
1389
+ *
1390
+ * Tracks how a discount distributes across [cart lines](https://shopify.dev/docs/api/storefront/current/objects/CartLine). Each allocation includes the [`CartDiscountApplication`](https://shopify.dev/docs/api/storefront/current/objects/CartDiscountApplication) details, the discounted amount, and whether the discount targets line items or shipping.
1391
+ *
1392
+ */
1273
1393
  export type CartDiscountAllocation = {
1274
1394
  /** The discount that have been applied on the cart line. */
1275
1395
  discountApplication: CartDiscountApplication;
@@ -1280,8 +1400,10 @@ export type CartDiscountAllocation = {
1280
1400
  };
1281
1401
 
1282
1402
  /**
1283
- * The discount application capture the intentions of a discount source at
1284
- * the time of application.
1403
+ * Captures the intent of a discount source at the time it was applied to a cart. This includes the discount value, how it's allocated across entitled items, and which line types it targets.
1404
+ *
1405
+ * The actual discounted amounts on specific cart lines are represented by [`CartDiscountAllocation`](https://shopify.dev/docs/api/storefront/current/interfaces/CartDiscountAllocation) objects, which reference this application.
1406
+ *
1285
1407
  */
1286
1408
  export type CartDiscountApplication = {
1287
1409
  __typename?: 'CartDiscountApplication';
@@ -1295,7 +1417,12 @@ export type CartDiscountApplication = {
1295
1417
  value: PricingValue;
1296
1418
  };
1297
1419
 
1298
- /** The discount codes applied to the cart. */
1420
+ /**
1421
+ * A discount code applied to a [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart). Discount codes are case-insensitive and can be added using the [`cartDiscountCodesUpdate`](https://shopify.dev/docs/api/storefront/current/mutations/cartDiscountCodesUpdate) mutation.
1422
+ *
1423
+ * The [`applicable`](https://shopify.dev/docs/api/storefront/current/objects/CartDiscountCode#field-CartDiscountCode.fields.applicable) field indicates whether the code applies to the cart's current contents, which might change as items are added or removed.
1424
+ *
1425
+ */
1299
1426
  export type CartDiscountCode = {
1300
1427
  __typename?: 'CartDiscountCode';
1301
1428
  /** Whether the discount code is applicable to the cart's current contents. */
@@ -1315,7 +1442,10 @@ export type CartDiscountCodesUpdatePayload = {
1315
1442
  warnings: Array<CartWarning>;
1316
1443
  };
1317
1444
 
1318
- /** Possible error codes that can be returned by `CartUserError`. */
1445
+ /**
1446
+ * Error codes returned by [`CartUserError`](https://shopify.dev/docs/api/storefront/current/objects/CartUserError) during cart mutations. Covers validation failures for addresses, quantities, delivery options, merchandise lines, discount codes, and metafields.
1447
+ *
1448
+ */
1319
1449
  export type CartErrorCode =
1320
1450
  /** The specified address field contains emojis. */
1321
1451
  | 'ADDRESS_FIELD_CONTAINS_EMOJIS'
@@ -1367,6 +1497,8 @@ export type CartErrorCode =
1367
1497
  | 'LESS_THAN'
1368
1498
  /** The quantity must be below the specified maximum for the item. */
1369
1499
  | 'MAXIMUM_EXCEEDED'
1500
+ /** An error occurred while processing cart transformations. */
1501
+ | 'MERCHANDISE_LINE_TRANSFORMERS_RUN_ERROR'
1370
1502
  /** Item cannot be purchased as configured. */
1371
1503
  | 'MERCHANDISE_NOT_APPLICABLE'
1372
1504
  /** The quantity must be above the specified minimum for the item. */
@@ -1432,7 +1564,12 @@ export type CartErrorCode =
1432
1564
  /** The given zip code is unsupported. */
1433
1565
  | 'ZIP_CODE_NOT_SUPPORTED';
1434
1566
 
1435
- /** The estimated costs that the buyer will pay at checkout. The estimated cost uses [`CartBuyerIdentity`](https://shopify.dev/api/storefront/reference/cart/cartbuyeridentity) to determine [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing). */
1567
+ /**
1568
+ * The estimated costs that the buyer pays at checkout. Uses [`CartBuyerIdentity`](https://shopify.dev/docs/api/storefront/current/objects/CartBuyerIdentity) to determine [international pricing](https://shopify.dev/docs/custom-storefronts/internationalization/international-pricing).
1569
+ *
1570
+ * Includes the subtotal, total amount, duties, and taxes. The [`checkoutChargeAmount`](https://shopify.dev/docs/api/storefront/current/objects/CartEstimatedCost#field-CartEstimatedCost.fields.checkoutChargeAmount) field excludes deferred payments that are charged later, making it useful for displaying what the customer pays immediately.
1571
+ *
1572
+ */
1436
1573
  export type CartEstimatedCost = {
1437
1574
  __typename?: 'CartEstimatedCost';
1438
1575
  /** The estimated amount, before taxes and discounts, for the customer to pay at checkout. The checkout charge amount doesn't include any deferred payments that'll be paid at a later date. If the cart has no deferred payments, then the checkout charge amount is equivalent to`subtotal_amount`. */
@@ -1489,7 +1626,12 @@ export type CartGiftCardCodesUpdatePayload = {
1489
1626
  warnings: Array<CartWarning>;
1490
1627
  };
1491
1628
 
1492
- /** The input fields to create a cart. */
1629
+ /**
1630
+ * The input fields for creating a [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart). Used by the [`cartCreate`](https://shopify.dev/docs/api/storefront/current/mutations/cartCreate) mutation.
1631
+ *
1632
+ * Accepts merchandise lines, discount codes, gift card codes, and a note. You can also set custom attributes, metafields, buyer identity for international pricing, and delivery addresses.
1633
+ *
1634
+ */
1493
1635
  export type CartInput = {
1494
1636
  /**
1495
1637
  * An array of key-value pairs that contains additional information about the cart.
@@ -1559,7 +1701,12 @@ export type CartInputMetafieldInput = {
1559
1701
  value: Scalars['String']['input'];
1560
1702
  };
1561
1703
 
1562
- /** Represents information about the merchandise in the cart. */
1704
+ /**
1705
+ * An item in a customer's [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart) representing a product variant they intend to purchase. Each cart line tracks the merchandise, quantity, cost breakdown, and any applied discounts.
1706
+ *
1707
+ * Cart lines can include custom attributes for additional information like gift wrapping requests, and can be associated with a [`SellingPlanAllocation`](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanAllocation) for purchase options like subscriptions, pre-orders, or try-before-you-buy. The [`instructions`](https://shopify.dev/docs/api/storefront/current/objects/CartLine#field-CartLine.fields.instructions) field indicates whether the line can be removed or have its quantity updated.
1708
+ *
1709
+ */
1563
1710
  export type CartLine = BaseCartLine &
1564
1711
  Node & {
1565
1712
  __typename?: 'CartLine';
@@ -1594,12 +1741,22 @@ export type CartLine = BaseCartLine &
1594
1741
  sellingPlanAllocation?: Maybe<SellingPlanAllocation>;
1595
1742
  };
1596
1743
 
1597
- /** Represents information about the merchandise in the cart. */
1744
+ /**
1745
+ * An item in a customer's [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart) representing a product variant they intend to purchase. Each cart line tracks the merchandise, quantity, cost breakdown, and any applied discounts.
1746
+ *
1747
+ * Cart lines can include custom attributes for additional information like gift wrapping requests, and can be associated with a [`SellingPlanAllocation`](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanAllocation) for purchase options like subscriptions, pre-orders, or try-before-you-buy. The [`instructions`](https://shopify.dev/docs/api/storefront/current/objects/CartLine#field-CartLine.fields.instructions) field indicates whether the line can be removed or have its quantity updated.
1748
+ *
1749
+ */
1598
1750
  export type CartLineAttributeArgs = {
1599
1751
  key: Scalars['String']['input'];
1600
1752
  };
1601
1753
 
1602
- /** The cost of the merchandise line that the buyer will pay at checkout. */
1754
+ /**
1755
+ * Cost breakdown for a single line item in a [cart](https://shopify.dev/docs/api/storefront/current/objects/Cart). Includes the per-unit price, the subtotal before line-level discounts, and the final total amount the buyer pays.
1756
+ *
1757
+ * The [`compareAtAmountPerQuantity`](https://shopify.dev/docs/api/storefront/current/objects/CartLineCost#field-CartLineCost.fields.compareAtAmountPerQuantity) field shows the original price when the item is on sale, enabling the display of savings to customers.
1758
+ *
1759
+ */
1603
1760
  export type CartLineCost = {
1604
1761
  __typename?: 'CartLineCost';
1605
1762
  /** The amount of the merchandise line. */
@@ -1628,7 +1785,12 @@ export type CartLineEstimatedCost = {
1628
1785
  totalAmount: MoneyV2;
1629
1786
  };
1630
1787
 
1631
- /** The input fields to create a merchandise line on a cart. */
1788
+ /**
1789
+ * The input fields for adding a merchandise line to a cart. Each line represents a [`ProductVariant`](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant) the buyer intends to purchase, along with the quantity and optional [`SellingPlan`](https://shopify.dev/docs/api/storefront/current/objects/SellingPlan) for subscriptions.
1790
+ *
1791
+ * Used by the [`cartCreate`](https://shopify.dev/docs/api/storefront/current/mutations/cartCreate) mutation when creating a cart with initial items, and the [`cartLinesAdd`](https://shopify.dev/docs/api/storefront/current/mutations/cartLinesAdd) mutation when adding items to an existing cart.
1792
+ *
1793
+ */
1632
1794
  export type CartLineInput = {
1633
1795
  /**
1634
1796
  * An array of key-value pairs that contains additional information about the merchandise line.
@@ -1670,7 +1832,12 @@ export type CartLineParentRelationship = {
1670
1832
  parent: CartLine;
1671
1833
  };
1672
1834
 
1673
- /** The input fields to update a line item on a cart. */
1835
+ /**
1836
+ * The input fields for updating a merchandise line in a cart. Used by the [`cartLinesUpdate`](https://shopify.dev/docs/api/storefront/current/mutations/cartLinesUpdate) mutation.
1837
+ *
1838
+ * Specify the line item's [`id`](https://shopify.dev/docs/api/storefront/current/input-objects/CartLineUpdateInput#fields-id) along with any fields to modify. You can change the quantity, swap the merchandise, update custom attributes, or associate a different selling plan.
1839
+ *
1840
+ */
1674
1841
  export type CartLineUpdateInput = {
1675
1842
  /**
1676
1843
  * An array of key-value pairs that contains additional information about the merchandise line.
@@ -1904,7 +2071,12 @@ export type CartSelectableAddress = {
1904
2071
  selected: Scalars['Boolean']['output'];
1905
2072
  };
1906
2073
 
1907
- /** The input fields for a selectable delivery address in a cart. */
2074
+ /**
2075
+ * The input fields for a selectable delivery address to present to the buyer. Used by [`CartDeliveryInput`](https://shopify.dev/docs/api/storefront/current/input-objects/CartDeliveryInput) when creating a cart with the [`cartCreate`](https://shopify.dev/docs/api/storefront/current/mutations/cartCreate) mutation.
2076
+ *
2077
+ * You can pre-select an address for the buyer, mark it as one-time use so it isn't saved after checkout, and specify how strictly the address should be validated.
2078
+ *
2079
+ */
1908
2080
  export type CartSelectableAddressInput = {
1909
2081
  /** Exactly one kind of delivery address. */
1910
2082
  address: CartAddressInput;
@@ -2019,7 +2191,12 @@ export type CartWalletPaymentMethodInput = {
2019
2191
  shopPayWalletContent?: InputMaybe<ShopPayWalletContentInput>;
2020
2192
  };
2021
2193
 
2022
- /** A warning that occurred during a cart mutation. */
2194
+ /**
2195
+ * A non-blocking issue that occurred during a cart mutation. Unlike errors, warnings don't prevent the mutation from completing but indicate potential problems that may affect the buyer's experience.
2196
+ *
2197
+ * Each warning includes a code identifying the issue type, a human-readable message, and a target ID pointing to the affected resource.
2198
+ *
2199
+ */
2023
2200
  export type CartWarning = {
2024
2201
  __typename?: 'CartWarning';
2025
2202
  /** The code of the warning. */
@@ -2077,8 +2254,9 @@ export type CategoryFilter = {
2077
2254
  };
2078
2255
 
2079
2256
  /**
2080
- * A collection represents a grouping of products that a shop owner can create to
2081
- * organize them or make their shops easier to browse.
2257
+ * A group of products [organized by a merchant](https://help.shopify.com/manual/products/collections) to make their store easier to browse. Collections can help customers discover related products by category, season, promotion, or other criteria.
2258
+ *
2259
+ * Query a collection's products with [filtering options](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections/filter-products) like availability, price range, vendor, and tags. Each collection includes [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) information, an optional [`Image`](https://shopify.dev/docs/api/storefront/current/objects/Image), and supports custom data through [`metafields`](https://shopify.dev/docs/api/storefront/current/objects/Metafield).
2082
2260
  *
2083
2261
  */
2084
2262
  export type Collection = HasMetafields &
@@ -2119,8 +2297,9 @@ export type Collection = HasMetafields &
2119
2297
  };
2120
2298
 
2121
2299
  /**
2122
- * A collection represents a grouping of products that a shop owner can create to
2123
- * organize them or make their shops easier to browse.
2300
+ * A group of products [organized by a merchant](https://help.shopify.com/manual/products/collections) to make their store easier to browse. Collections can help customers discover related products by category, season, promotion, or other criteria.
2301
+ *
2302
+ * Query a collection's products with [filtering options](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections/filter-products) like availability, price range, vendor, and tags. Each collection includes [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) information, an optional [`Image`](https://shopify.dev/docs/api/storefront/current/objects/Image), and supports custom data through [`metafields`](https://shopify.dev/docs/api/storefront/current/objects/Metafield).
2124
2303
  *
2125
2304
  */
2126
2305
  export type CollectionDescriptionArgs = {
@@ -2128,8 +2307,9 @@ export type CollectionDescriptionArgs = {
2128
2307
  };
2129
2308
 
2130
2309
  /**
2131
- * A collection represents a grouping of products that a shop owner can create to
2132
- * organize them or make their shops easier to browse.
2310
+ * A group of products [organized by a merchant](https://help.shopify.com/manual/products/collections) to make their store easier to browse. Collections can help customers discover related products by category, season, promotion, or other criteria.
2311
+ *
2312
+ * Query a collection's products with [filtering options](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections/filter-products) like availability, price range, vendor, and tags. Each collection includes [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) information, an optional [`Image`](https://shopify.dev/docs/api/storefront/current/objects/Image), and supports custom data through [`metafields`](https://shopify.dev/docs/api/storefront/current/objects/Metafield).
2133
2313
  *
2134
2314
  */
2135
2315
  export type CollectionMetafieldArgs = {
@@ -2138,8 +2318,9 @@ export type CollectionMetafieldArgs = {
2138
2318
  };
2139
2319
 
2140
2320
  /**
2141
- * A collection represents a grouping of products that a shop owner can create to
2142
- * organize them or make their shops easier to browse.
2321
+ * A group of products [organized by a merchant](https://help.shopify.com/manual/products/collections) to make their store easier to browse. Collections can help customers discover related products by category, season, promotion, or other criteria.
2322
+ *
2323
+ * Query a collection's products with [filtering options](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections/filter-products) like availability, price range, vendor, and tags. Each collection includes [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) information, an optional [`Image`](https://shopify.dev/docs/api/storefront/current/objects/Image), and supports custom data through [`metafields`](https://shopify.dev/docs/api/storefront/current/objects/Metafield).
2143
2324
  *
2144
2325
  */
2145
2326
  export type CollectionMetafieldsArgs = {
@@ -2147,8 +2328,9 @@ export type CollectionMetafieldsArgs = {
2147
2328
  };
2148
2329
 
2149
2330
  /**
2150
- * A collection represents a grouping of products that a shop owner can create to
2151
- * organize them or make their shops easier to browse.
2331
+ * A group of products [organized by a merchant](https://help.shopify.com/manual/products/collections) to make their store easier to browse. Collections can help customers discover related products by category, season, promotion, or other criteria.
2332
+ *
2333
+ * Query a collection's products with [filtering options](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections/filter-products) like availability, price range, vendor, and tags. Each collection includes [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) information, an optional [`Image`](https://shopify.dev/docs/api/storefront/current/objects/Image), and supports custom data through [`metafields`](https://shopify.dev/docs/api/storefront/current/objects/Metafield).
2152
2334
  *
2153
2335
  */
2154
2336
  export type CollectionProductsArgs = {
@@ -2257,7 +2439,12 @@ export type CommentEdge = {
2257
2439
  node: Comment;
2258
2440
  };
2259
2441
 
2260
- /** Represents information about a company which is also a customer of the shop. */
2442
+ /**
2443
+ * A B2B organization that purchases from the shop. In the Storefront API, company information is accessed through the [`PurchasingCompany`](https://shopify.dev/docs/api/storefront/current/objects/PurchasingCompany) object on [`CartBuyerIdentity`](https://shopify.dev/docs/api/storefront/current/objects/CartBuyerIdentity), which provides the associated location and contact for the current purchasing context.
2444
+ *
2445
+ * You can store custom data using [metafields](https://shopify.dev/docs/apps/build/metafields).
2446
+ *
2447
+ */
2261
2448
  export type Company = HasMetafields &
2262
2449
  Node & {
2263
2450
  __typename?: 'Company';
@@ -2277,13 +2464,23 @@ export type Company = HasMetafields &
2277
2464
  updatedAt: Scalars['DateTime']['output'];
2278
2465
  };
2279
2466
 
2280
- /** Represents information about a company which is also a customer of the shop. */
2467
+ /**
2468
+ * A B2B organization that purchases from the shop. In the Storefront API, company information is accessed through the [`PurchasingCompany`](https://shopify.dev/docs/api/storefront/current/objects/PurchasingCompany) object on [`CartBuyerIdentity`](https://shopify.dev/docs/api/storefront/current/objects/CartBuyerIdentity), which provides the associated location and contact for the current purchasing context.
2469
+ *
2470
+ * You can store custom data using [metafields](https://shopify.dev/docs/apps/build/metafields).
2471
+ *
2472
+ */
2281
2473
  export type CompanyMetafieldArgs = {
2282
2474
  key: Scalars['String']['input'];
2283
2475
  namespace?: InputMaybe<Scalars['String']['input']>;
2284
2476
  };
2285
2477
 
2286
- /** Represents information about a company which is also a customer of the shop. */
2478
+ /**
2479
+ * A B2B organization that purchases from the shop. In the Storefront API, company information is accessed through the [`PurchasingCompany`](https://shopify.dev/docs/api/storefront/current/objects/PurchasingCompany) object on [`CartBuyerIdentity`](https://shopify.dev/docs/api/storefront/current/objects/CartBuyerIdentity), which provides the associated location and contact for the current purchasing context.
2480
+ *
2481
+ * You can store custom data using [metafields](https://shopify.dev/docs/apps/build/metafields).
2482
+ *
2483
+ */
2287
2484
  export type CompanyMetafieldsArgs = {
2288
2485
  identifiers: Array<HasMetafieldsIdentifier>;
2289
2486
  };
@@ -2303,7 +2500,12 @@ export type CompanyContact = Node & {
2303
2500
  updatedAt: Scalars['DateTime']['output'];
2304
2501
  };
2305
2502
 
2306
- /** A company's location. */
2503
+ /**
2504
+ * A branch or office of a [`Company`](https://shopify.dev/docs/api/storefront/current/objects/Company) where B2B customers can place orders. When a B2B customer selects a location after logging in, the Storefront API contextualizes product queries to return location-specific pricing and quantity rules.
2505
+ *
2506
+ * Access through the [`PurchasingCompany`](https://shopify.dev/docs/api/storefront/current/objects/PurchasingCompany) object, which associates the location with the buyer's [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart).
2507
+ *
2508
+ */
2307
2509
  export type CompanyLocation = HasMetafields &
2308
2510
  Node & {
2309
2511
  __typename?: 'CompanyLocation';
@@ -2325,13 +2527,23 @@ export type CompanyLocation = HasMetafields &
2325
2527
  updatedAt: Scalars['DateTime']['output'];
2326
2528
  };
2327
2529
 
2328
- /** A company's location. */
2530
+ /**
2531
+ * A branch or office of a [`Company`](https://shopify.dev/docs/api/storefront/current/objects/Company) where B2B customers can place orders. When a B2B customer selects a location after logging in, the Storefront API contextualizes product queries to return location-specific pricing and quantity rules.
2532
+ *
2533
+ * Access through the [`PurchasingCompany`](https://shopify.dev/docs/api/storefront/current/objects/PurchasingCompany) object, which associates the location with the buyer's [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart).
2534
+ *
2535
+ */
2329
2536
  export type CompanyLocationMetafieldArgs = {
2330
2537
  key: Scalars['String']['input'];
2331
2538
  namespace?: InputMaybe<Scalars['String']['input']>;
2332
2539
  };
2333
2540
 
2334
- /** A company's location. */
2541
+ /**
2542
+ * A branch or office of a [`Company`](https://shopify.dev/docs/api/storefront/current/objects/Company) where B2B customers can place orders. When a B2B customer selects a location after logging in, the Storefront API contextualizes product queries to return location-specific pricing and quantity rules.
2543
+ *
2544
+ * Access through the [`PurchasingCompany`](https://shopify.dev/docs/api/storefront/current/objects/PurchasingCompany) object, which associates the location with the buyer's [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart).
2545
+ *
2546
+ */
2335
2547
  export type CompanyLocationMetafieldsArgs = {
2336
2548
  identifiers: Array<HasMetafieldsIdentifier>;
2337
2549
  };
@@ -2422,7 +2634,12 @@ export type CountPrecision =
2422
2634
  /** The count is exactly the value. */
2423
2635
  | 'EXACT';
2424
2636
 
2425
- /** A country. */
2637
+ /**
2638
+ * A country with localization settings for a storefront. Includes the country's currency, available languages, default language, and unit system (metric or imperial).
2639
+ *
2640
+ * Access countries through the [localization](https://shopify.dev/docs/api/storefront/current/queries/localization) query, which returns both the list of available countries and the currently active country. Use the [`@inContext`](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/in-context) directive to change the active country context.
2641
+ *
2642
+ */
2426
2643
  export type Country = {
2427
2644
  __typename?: 'Country';
2428
2645
  /** The languages available for the country. */
@@ -3297,7 +3514,14 @@ export type CurrencyCode =
3297
3514
  /** Zambian Kwacha (ZMW). */
3298
3515
  | 'ZMW';
3299
3516
 
3300
- /** A customer represents a customer account with the shop. Customer accounts store contact information for the customer, saving logged-in customers the trouble of having to provide it at every checkout. */
3517
+ /**
3518
+ * A customer account with the shop. Includes data such as contact information, [addresses](https://shopify.dev/docs/api/storefront/current/objects/MailingAddress) and marketing preferences for logged-in customers, so they don't have to provide these details at every checkout.
3519
+ *
3520
+ * Access the customer through the [`customer`](https://shopify.dev/docs/api/storefront/current/queries/customer) query using a customer access token obtained from the [`customerAccessTokenCreate`](https://shopify.dev/docs/api/storefront/current/mutations/customerAccessTokenCreate) mutation.
3521
+ *
3522
+ * The object implements the [`HasMetafields`](https://shopify.dev/docs/api/storefront/current/interfaces/HasMetafields) interface, enabling retrieval of [custom data](https://shopify.dev/docs/apps/build/custom-data) associated with the customer.
3523
+ *
3524
+ */
3301
3525
  export type Customer = HasMetafields & {
3302
3526
  __typename?: 'Customer';
3303
3527
  /** Indicates whether the customer has consented to be sent marketing material via email. */
@@ -3342,7 +3566,14 @@ export type Customer = HasMetafields & {
3342
3566
  updatedAt: Scalars['DateTime']['output'];
3343
3567
  };
3344
3568
 
3345
- /** A customer represents a customer account with the shop. Customer accounts store contact information for the customer, saving logged-in customers the trouble of having to provide it at every checkout. */
3569
+ /**
3570
+ * A customer account with the shop. Includes data such as contact information, [addresses](https://shopify.dev/docs/api/storefront/current/objects/MailingAddress) and marketing preferences for logged-in customers, so they don't have to provide these details at every checkout.
3571
+ *
3572
+ * Access the customer through the [`customer`](https://shopify.dev/docs/api/storefront/current/queries/customer) query using a customer access token obtained from the [`customerAccessTokenCreate`](https://shopify.dev/docs/api/storefront/current/mutations/customerAccessTokenCreate) mutation.
3573
+ *
3574
+ * The object implements the [`HasMetafields`](https://shopify.dev/docs/api/storefront/current/interfaces/HasMetafields) interface, enabling retrieval of [custom data](https://shopify.dev/docs/apps/build/custom-data) associated with the customer.
3575
+ *
3576
+ */
3346
3577
  export type CustomerAddressesArgs = {
3347
3578
  after?: InputMaybe<Scalars['String']['input']>;
3348
3579
  before?: InputMaybe<Scalars['String']['input']>;
@@ -3351,18 +3582,39 @@ export type CustomerAddressesArgs = {
3351
3582
  reverse?: InputMaybe<Scalars['Boolean']['input']>;
3352
3583
  };
3353
3584
 
3354
- /** A customer represents a customer account with the shop. Customer accounts store contact information for the customer, saving logged-in customers the trouble of having to provide it at every checkout. */
3585
+ /**
3586
+ * A customer account with the shop. Includes data such as contact information, [addresses](https://shopify.dev/docs/api/storefront/current/objects/MailingAddress) and marketing preferences for logged-in customers, so they don't have to provide these details at every checkout.
3587
+ *
3588
+ * Access the customer through the [`customer`](https://shopify.dev/docs/api/storefront/current/queries/customer) query using a customer access token obtained from the [`customerAccessTokenCreate`](https://shopify.dev/docs/api/storefront/current/mutations/customerAccessTokenCreate) mutation.
3589
+ *
3590
+ * The object implements the [`HasMetafields`](https://shopify.dev/docs/api/storefront/current/interfaces/HasMetafields) interface, enabling retrieval of [custom data](https://shopify.dev/docs/apps/build/custom-data) associated with the customer.
3591
+ *
3592
+ */
3355
3593
  export type CustomerMetafieldArgs = {
3356
3594
  key: Scalars['String']['input'];
3357
3595
  namespace?: InputMaybe<Scalars['String']['input']>;
3358
3596
  };
3359
3597
 
3360
- /** A customer represents a customer account with the shop. Customer accounts store contact information for the customer, saving logged-in customers the trouble of having to provide it at every checkout. */
3598
+ /**
3599
+ * A customer account with the shop. Includes data such as contact information, [addresses](https://shopify.dev/docs/api/storefront/current/objects/MailingAddress) and marketing preferences for logged-in customers, so they don't have to provide these details at every checkout.
3600
+ *
3601
+ * Access the customer through the [`customer`](https://shopify.dev/docs/api/storefront/current/queries/customer) query using a customer access token obtained from the [`customerAccessTokenCreate`](https://shopify.dev/docs/api/storefront/current/mutations/customerAccessTokenCreate) mutation.
3602
+ *
3603
+ * The object implements the [`HasMetafields`](https://shopify.dev/docs/api/storefront/current/interfaces/HasMetafields) interface, enabling retrieval of [custom data](https://shopify.dev/docs/apps/build/custom-data) associated with the customer.
3604
+ *
3605
+ */
3361
3606
  export type CustomerMetafieldsArgs = {
3362
3607
  identifiers: Array<HasMetafieldsIdentifier>;
3363
3608
  };
3364
3609
 
3365
- /** A customer represents a customer account with the shop. Customer accounts store contact information for the customer, saving logged-in customers the trouble of having to provide it at every checkout. */
3610
+ /**
3611
+ * A customer account with the shop. Includes data such as contact information, [addresses](https://shopify.dev/docs/api/storefront/current/objects/MailingAddress) and marketing preferences for logged-in customers, so they don't have to provide these details at every checkout.
3612
+ *
3613
+ * Access the customer through the [`customer`](https://shopify.dev/docs/api/storefront/current/queries/customer) query using a customer access token obtained from the [`customerAccessTokenCreate`](https://shopify.dev/docs/api/storefront/current/mutations/customerAccessTokenCreate) mutation.
3614
+ *
3615
+ * The object implements the [`HasMetafields`](https://shopify.dev/docs/api/storefront/current/interfaces/HasMetafields) interface, enabling retrieval of [custom data](https://shopify.dev/docs/apps/build/custom-data) associated with the customer.
3616
+ *
3617
+ */
3366
3618
  export type CustomerOrdersArgs = {
3367
3619
  after?: InputMaybe<Scalars['String']['input']>;
3368
3620
  before?: InputMaybe<Scalars['String']['input']>;
@@ -3373,7 +3625,12 @@ export type CustomerOrdersArgs = {
3373
3625
  sortKey?: InputMaybe<OrderSortKeys>;
3374
3626
  };
3375
3627
 
3376
- /** A CustomerAccessToken represents the unique token required to make modifications to the customer object. */
3628
+ /**
3629
+ * A unique authentication token that identifies a logged-in customer and authorizes modifications to the [`Customer`](https://shopify.dev/docs/api/storefront/current/objects/Customer) object. The token is required for customer-specific operations like updating profile information or managing addresses.
3630
+ *
3631
+ * Tokens have an expiration date and must be renewed using [`customerAccessTokenRenew`](https://shopify.dev/docs/api/storefront/current/mutations/customerAccessTokenRenew) before they expire. Create tokens with [`customerAccessTokenCreate`](https://shopify.dev/docs/api/storefront/current/mutations/customerAccessTokenCreate) using legacy customer account authentication (email and password), or with [`customerAccessTokenCreateWithMultipass`](https://shopify.dev/docs/api/storefront/current/mutations/customerAccessTokenCreateWithMultipass) for single sign-on flows.
3632
+ *
3633
+ */
3377
3634
  export type CustomerAccessToken = {
3378
3635
  __typename?: 'CustomerAccessToken';
3379
3636
  /** The customer’s access token. */
@@ -3382,7 +3639,10 @@ export type CustomerAccessToken = {
3382
3639
  expiresAt: Scalars['DateTime']['output'];
3383
3640
  };
3384
3641
 
3385
- /** The input fields required to create a customer access token. */
3642
+ /**
3643
+ * The input fields for authenticating a customer with email and password. Used by the [`customerAccessTokenCreate`](https://shopify.dev/docs/api/storefront/current/mutations/customerAccessTokenCreate) mutation to generate a [`CustomerAccessToken`](https://shopify.dev/docs/api/storefront/current/objects/CustomerAccessToken), which is required to read or modify customer data.
3644
+ *
3645
+ */
3386
3646
  export type CustomerAccessTokenCreateInput = {
3387
3647
  /** The email associated to the customer. */
3388
3648
  email: Scalars['String']['input'];
@@ -3510,7 +3770,15 @@ export type CustomerAddressUpdatePayload = {
3510
3770
  userErrors: Array<UserError>;
3511
3771
  };
3512
3772
 
3513
- /** The input fields to create a new customer. */
3773
+ /**
3774
+ * The input fields for creating a new [`Customer`](https://shopify.dev/docs/api/storefront/current/objects/Customer) account. Used by the [`customerCreate`](https://shopify.dev/docs/api/storefront/current/mutations/customerCreate) mutation.
3775
+ *
3776
+ * For legacy customer accounts only and requires an email address and password. Optionally accepts the customer's name, phone number, and email marketing consent.
3777
+ *
3778
+ * > Caution:
3779
+ * > The password is used for customer authentication. Ensure it's transmitted securely and never logged or stored in plain text.
3780
+ *
3781
+ */
3514
3782
  export type CustomerCreateInput = {
3515
3783
  /** Indicates whether the customer has consented to be sent marketing material via email. */
3516
3784
  acceptsMarketing?: InputMaybe<Scalars['Boolean']['input']>;
@@ -3559,7 +3827,10 @@ export type CustomerDefaultAddressUpdatePayload = {
3559
3827
  userErrors: Array<UserError>;
3560
3828
  };
3561
3829
 
3562
- /** Possible error codes that can be returned by `CustomerUserError`. */
3830
+ /**
3831
+ * Error codes returned by the [`CustomerUserError`](https://shopify.dev/docs/api/storefront/current/objects/CustomerUserError) object. These codes identify specific validation and processing failures for customer-related mutations, including account creation, updates, password resets, and address management.
3832
+ *
3833
+ */
3563
3834
  export type CustomerErrorCode =
3564
3835
  /** Customer already enabled. */
3565
3836
  | 'ALREADY_ENABLED'
@@ -3644,7 +3915,13 @@ export type CustomerResetPayload = {
3644
3915
  userErrors: Array<UserError>;
3645
3916
  };
3646
3917
 
3647
- /** The input fields to update the Customer information. */
3918
+ /**
3919
+ * The input fields for updating a [`Customer`](https://shopify.dev/docs/api/storefront/current/objects/Customer). Used by the [`customerUpdate`](https://shopify.dev/docs/api/storefront/current/mutations/customerUpdate) mutation.
3920
+ *
3921
+ * > Caution:
3922
+ * > Updating the password invalidates all existing access tokens, including the one used to perform the mutation. The response returns a new access token. Ensure your app handles the new token returned in the response to avoid logging the customer out.
3923
+ *
3924
+ */
3648
3925
  export type CustomerUpdateInput = {
3649
3926
  /** Indicates whether the customer has consented to be sent marketing material via email. */
3650
3927
  acceptsMarketing?: InputMaybe<Scalars['Boolean']['input']>;
@@ -3722,7 +3999,9 @@ export type DeliveryAddressInput = {
3722
3999
  };
3723
4000
 
3724
4001
  /**
3725
- * Defines the types of available validation strategies for delivery addresses.
4002
+ * Controls how delivery addresses are validated during cart operations. The default validation checks only the country code, while strict validation verifies all address fields against Shopify's checkout rules and rejects invalid addresses.
4003
+ *
4004
+ * Used by [`DeliveryAddressInput`](https://shopify.dev/docs/api/storefront/current/input-objects/DeliveryAddressInput) when setting buyer identity preferences, and by [`CartSelectableAddressInput`](https://shopify.dev/docs/api/storefront/current/input-objects/CartSelectableAddressInput) and [`CartSelectableAddressUpdateInput`](https://shopify.dev/docs/api/storefront/current/input-objects/CartSelectableAddressUpdateInput) when managing cart delivery addresses.
3726
4005
  *
3727
4006
  */
3728
4007
  export type DeliveryAddressValidationStrategy =
@@ -3762,7 +4041,9 @@ export type DigitalWallet =
3762
4041
  | 'SHOPIFY_PAY';
3763
4042
 
3764
4043
  /**
3765
- * An amount discounting the line that has been allocated by a discount.
4044
+ * The calculated discount amount applied to a line item or shipping line. While a [`DiscountApplication`](https://shopify.dev/docs/api/storefront/current/interfaces/DiscountApplication) captures the discount's rules and intentions, the allocation shows how much was actually deducted.
4045
+ *
4046
+ * Each allocation includes the discounted amount and a reference to the originating discount application.
3766
4047
  *
3767
4048
  */
3768
4049
  export type DiscountAllocation = {
@@ -3778,8 +4059,9 @@ export type DiscountAllocation = {
3778
4059
  };
3779
4060
 
3780
4061
  /**
3781
- * Discount applications capture the intentions of a discount source at
3782
- * the time of application.
4062
+ * Captures the intent of a discount at the time it was applied. Each implementation represents a different discount source, such as [automatic discounts](https://help.shopify.com/manual/discounts/discount-methods/automatic-discounts), [discount codes](https://help.shopify.com/manual/discounts/discount-methods/discount-codes), and manual discounts.
4063
+ *
4064
+ * The actual discounted amount on a line item or shipping line is represented by the [`DiscountAllocation`](https://shopify.dev/docs/api/storefront/current/objects/DiscountAllocation) object, which references the discount application it originated from.
3783
4065
  *
3784
4066
  */
3785
4067
  export type DiscountApplication = {
@@ -3793,7 +4075,12 @@ export type DiscountApplication = {
3793
4075
  value: PricingValue;
3794
4076
  };
3795
4077
 
3796
- /** The method by which the discount's value is allocated onto its entitled lines. */
4078
+ /**
4079
+ * Controls how a discount's value is distributed across entitled lines. A discount can either spread its value across all entitled lines or apply the full value to each line individually.
4080
+ *
4081
+ * Used by the [`DiscountApplication`](https://shopify.dev/docs/api/storefront/current/interfaces/DiscountApplication) interface and its implementations to capture the intentions of a discount source at the time of application.
4082
+ *
4083
+ */
3797
4084
  export type DiscountApplicationAllocationMethod =
3798
4085
  /** The value is spread across all entitled lines. */
3799
4086
  | 'ACROSS'
@@ -3863,8 +4150,10 @@ export type DiscountApplicationTargetType =
3863
4150
  | 'SHIPPING_LINE';
3864
4151
 
3865
4152
  /**
3866
- * Discount code applications capture the intentions of a discount code at
3867
- * the time that it is applied.
4153
+ * Records the configuration and intent of a [discount code](https://help.shopify.com/manual/discounts/discount-methods/discount-codes) when a customer applies it. This includes the code string, allocation method, target type, and discount value at the time of application. The [`applicable`](https://shopify.dev/docs/api/storefront/latest/objects/DiscountCodeApplication#field-DiscountCodeApplication.fields.applicable) field indicates whether the code was successfully applied.
4154
+ *
4155
+ * > Note:
4156
+ * > To see the actual amounts discounted on specific line items or shipping lines, use the [`DiscountAllocation`](https://shopify.dev/docs/api/storefront/current/objects/DiscountAllocation) object instead.
3868
4157
  *
3869
4158
  */
3870
4159
  export type DiscountCodeApplication = DiscountApplication & {
@@ -3891,7 +4180,10 @@ export type DisplayableError = {
3891
4180
  message: Scalars['String']['output'];
3892
4181
  };
3893
4182
 
3894
- /** Represents a web address. */
4183
+ /**
4184
+ * A web address associated with a shop. The [`Shop`](https://shopify.dev/docs/api/storefront/current/objects/Shop) object's [`primaryDomain`](https://shopify.dev/docs/api/storefront/current/objects/Shop#field-Shop.fields.primaryDomain) field returns this to identify the shop's online store URL.
4185
+ *
4186
+ */
3895
4187
  export type Domain = {
3896
4188
  __typename?: 'Domain';
3897
4189
  /** The host name of the domain (eg: `example.com`). */
@@ -3929,7 +4221,12 @@ export type ExternalVideo = Media &
3929
4221
  previewImage?: Maybe<Image>;
3930
4222
  };
3931
4223
 
3932
- /** A filter that is supported on the parent field. */
4224
+ /**
4225
+ * A filter option available on collection and search results pages. Each filter includes a type, display label, and selectable values that customers can use to narrow down products.
4226
+ *
4227
+ * The [`FilterValue`](https://shopify.dev/docs/api/storefront/current/objects/FilterValue) objects contain an [`input`](https://shopify.dev/docs/api/storefront/current/objects/FilterValue#field-FilterValue.fields.input) field that you can combine to [build dynamic filtering queries](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections/filter-products). Merchants [configure available filters](https://help.shopify.com/manual/online-store/search-and-discovery/filters) using the Shopify Search & Discovery app.
4228
+ *
4229
+ */
3933
4230
  export type Filter = {
3934
4231
  __typename?: 'Filter';
3935
4232
  /** A unique identifier. */
@@ -3975,7 +4272,12 @@ export type FilterType =
3975
4272
  /** A range of prices. */
3976
4273
  | 'PRICE_RANGE';
3977
4274
 
3978
- /** A selectable value within a filter. */
4275
+ /**
4276
+ * A selectable option within a [`Filter`](https://shopify.dev/docs/api/storefront/current/objects/Filter), such as a specific color, size, or product type. Each value includes a count of matching results and a human-readable label for display.
4277
+ *
4278
+ * The [`input`](https://shopify.dev/docs/api/storefront/current/objects/FilterValue#field-FilterValue.fields.input) field provides ready-to-use JSON for building dynamic filtering interfaces. You can combine the `input` values from multiple selected [`FilterValue`](https://shopify.dev/docs/api/storefront/current/objects/FilterValue) objects to construct filter queries. Visual representations are available through the [`image`](https://shopify.dev/docs/api/storefront/current/objects/FilterValue#field-FilterValue.fields.image) or [`swatch`](https://shopify.dev/docs/api/storefront/current/objects/FilterValue#field-FilterValue.fields.swatch) fields when the parent filter's presentation type supports them.
4279
+ *
4280
+ */
3979
4281
  export type FilterValue = {
3980
4282
  __typename?: 'FilterValue';
3981
4283
  /** The number of results that match this filter value. */
@@ -3999,7 +4301,12 @@ export type FilterValue = {
3999
4301
  swatch?: Maybe<Swatch>;
4000
4302
  };
4001
4303
 
4002
- /** Represents a single fulfillment in an order. */
4304
+ /**
4305
+ * A shipment of one or more items in an order. Accessed through the [`Order`](https://shopify.dev/docs/api/storefront/current/objects/Order) object's [`successfulFulfillments`](https://shopify.dev/docs/api/storefront/current/objects/Order#field-Order.fields.successfulFulfillments) field.
4306
+ *
4307
+ * Each fulfillment includes the line items that shipped, the tracking company name, and tracking details like numbers and URLs. An order can have multiple fulfillments when items ship separately or from different locations.
4308
+ *
4309
+ */
4003
4310
  export type Fulfillment = {
4004
4311
  __typename?: 'Fulfillment';
4005
4312
  /** List of the fulfillment's line items. */
@@ -4014,21 +4321,34 @@ export type Fulfillment = {
4014
4321
  trackingInfo: Array<FulfillmentTrackingInfo>;
4015
4322
  };
4016
4323
 
4017
- /** Represents a single fulfillment in an order. */
4018
- export type FulfillmentFulfillmentLineItemsArgs = {
4019
- after?: InputMaybe<Scalars['String']['input']>;
4324
+ /**
4325
+ * A shipment of one or more items in an order. Accessed through the [`Order`](https://shopify.dev/docs/api/storefront/current/objects/Order) object's [`successfulFulfillments`](https://shopify.dev/docs/api/storefront/current/objects/Order#field-Order.fields.successfulFulfillments) field.
4326
+ *
4327
+ * Each fulfillment includes the line items that shipped, the tracking company name, and tracking details like numbers and URLs. An order can have multiple fulfillments when items ship separately or from different locations.
4328
+ *
4329
+ */
4330
+ export type FulfillmentFulfillmentLineItemsArgs = {
4331
+ after?: InputMaybe<Scalars['String']['input']>;
4020
4332
  before?: InputMaybe<Scalars['String']['input']>;
4021
4333
  first?: InputMaybe<Scalars['Int']['input']>;
4022
4334
  last?: InputMaybe<Scalars['Int']['input']>;
4023
4335
  reverse?: InputMaybe<Scalars['Boolean']['input']>;
4024
4336
  };
4025
4337
 
4026
- /** Represents a single fulfillment in an order. */
4338
+ /**
4339
+ * A shipment of one or more items in an order. Accessed through the [`Order`](https://shopify.dev/docs/api/storefront/current/objects/Order) object's [`successfulFulfillments`](https://shopify.dev/docs/api/storefront/current/objects/Order#field-Order.fields.successfulFulfillments) field.
4340
+ *
4341
+ * Each fulfillment includes the line items that shipped, the tracking company name, and tracking details like numbers and URLs. An order can have multiple fulfillments when items ship separately or from different locations.
4342
+ *
4343
+ */
4027
4344
  export type FulfillmentTrackingInfoArgs = {
4028
4345
  first?: InputMaybe<Scalars['Int']['input']>;
4029
4346
  };
4030
4347
 
4031
- /** Represents a single line item in a fulfillment. There is at most one fulfillment line item for each order line item. */
4348
+ /**
4349
+ * Records how many units of an [`OrderLineItem`](https://shopify.dev/docs/api/storefront/current/objects/OrderLineItem) were included in a [`Fulfillment`](https://shopify.dev/docs/api/storefront/current/objects/Fulfillment). Each order line item has at most one fulfillment line item per fulfillment.
4350
+ *
4351
+ */
4032
4352
  export type FulfillmentLineItem = {
4033
4353
  __typename?: 'FulfillmentLineItem';
4034
4354
  /** The associated order's line item. */
@@ -4072,7 +4392,14 @@ export type FulfillmentTrackingInfo = {
4072
4392
  url?: Maybe<Scalars['URL']['output']>;
4073
4393
  };
4074
4394
 
4075
- /** The generic file resource lets you manage files in a merchant’s store. Generic files include any file that doesn’t fit into a designated type such as image or video. Example: PDF, JSON. */
4395
+ /**
4396
+ * Any file that doesn't fit into a designated type like image or video. For example, a PDF or JSON document. Use this object to manage files in a merchant's store.
4397
+ *
4398
+ * Generic files are commonly referenced through [file reference metafields](https://shopify.dev/docs/apps/build/metafields/list-of-data-types) and returned as part of the [`MetafieldReference`](https://shopify.dev/docs/api/storefront/current/unions/MetafieldReference) union.
4399
+ *
4400
+ * Includes the file's URL, MIME type, size in bytes, and an optional preview image.
4401
+ *
4402
+ */
4076
4403
  export type GenericFile = Node & {
4077
4404
  __typename?: 'GenericFile';
4078
4405
  /** A word or phrase to indicate the contents of a file. */
@@ -4097,7 +4424,12 @@ export type GeoCoordinateInput = {
4097
4424
  longitude: Scalars['Float']['input'];
4098
4425
  };
4099
4426
 
4100
- /** Represents information about the metafields associated to the specified resource. */
4427
+ /**
4428
+ * Implemented by resources that support custom metadata through [`Metafield`](https://shopify.dev/docs/api/storefront/current/objects/Metafield) objects. Types like [`Product`](https://shopify.dev/docs/api/storefront/current/objects/Product), [`Collection`](https://shopify.dev/docs/api/storefront/current/objects/Collection), and [`Customer`](https://shopify.dev/docs/api/storefront/current/objects/Customer) implement this interface to provide consistent access to metafields.
4429
+ *
4430
+ * You can retrieve a [single metafield](https://shopify.dev/docs/api/storefront/current/interfaces/HasMetafields#fields-metafield) by namespace and key, or fetch [multiple metafields](https://shopify.dev/docs/api/storefront/current/interfaces/HasMetafields#fields-metafields) in a single request. If you omit the namespace, then the [app-reserved namespace](https://shopify.dev/docs/apps/build/metafields#app-owned-metafields) is used by default.
4431
+ *
4432
+ */
4101
4433
  export type HasMetafields = {
4102
4434
  /** A [custom field](https://shopify.dev/docs/apps/build/custom-data), including its `namespace` and `key`, that's associated with a Shopify resource for the purposes of adding and storing additional information. */
4103
4435
  metafield?: Maybe<Metafield>;
@@ -4105,18 +4437,33 @@ export type HasMetafields = {
4105
4437
  metafields: Array<Maybe<Metafield>>;
4106
4438
  };
4107
4439
 
4108
- /** Represents information about the metafields associated to the specified resource. */
4440
+ /**
4441
+ * Implemented by resources that support custom metadata through [`Metafield`](https://shopify.dev/docs/api/storefront/current/objects/Metafield) objects. Types like [`Product`](https://shopify.dev/docs/api/storefront/current/objects/Product), [`Collection`](https://shopify.dev/docs/api/storefront/current/objects/Collection), and [`Customer`](https://shopify.dev/docs/api/storefront/current/objects/Customer) implement this interface to provide consistent access to metafields.
4442
+ *
4443
+ * You can retrieve a [single metafield](https://shopify.dev/docs/api/storefront/current/interfaces/HasMetafields#fields-metafield) by namespace and key, or fetch [multiple metafields](https://shopify.dev/docs/api/storefront/current/interfaces/HasMetafields#fields-metafields) in a single request. If you omit the namespace, then the [app-reserved namespace](https://shopify.dev/docs/apps/build/metafields#app-owned-metafields) is used by default.
4444
+ *
4445
+ */
4109
4446
  export type HasMetafieldsMetafieldArgs = {
4110
4447
  key: Scalars['String']['input'];
4111
4448
  namespace?: InputMaybe<Scalars['String']['input']>;
4112
4449
  };
4113
4450
 
4114
- /** Represents information about the metafields associated to the specified resource. */
4451
+ /**
4452
+ * Implemented by resources that support custom metadata through [`Metafield`](https://shopify.dev/docs/api/storefront/current/objects/Metafield) objects. Types like [`Product`](https://shopify.dev/docs/api/storefront/current/objects/Product), [`Collection`](https://shopify.dev/docs/api/storefront/current/objects/Collection), and [`Customer`](https://shopify.dev/docs/api/storefront/current/objects/Customer) implement this interface to provide consistent access to metafields.
4453
+ *
4454
+ * You can retrieve a [single metafield](https://shopify.dev/docs/api/storefront/current/interfaces/HasMetafields#fields-metafield) by namespace and key, or fetch [multiple metafields](https://shopify.dev/docs/api/storefront/current/interfaces/HasMetafields#fields-metafields) in a single request. If you omit the namespace, then the [app-reserved namespace](https://shopify.dev/docs/apps/build/metafields#app-owned-metafields) is used by default.
4455
+ *
4456
+ */
4115
4457
  export type HasMetafieldsMetafieldsArgs = {
4116
4458
  identifiers: Array<HasMetafieldsIdentifier>;
4117
4459
  };
4118
4460
 
4119
- /** The input fields to identify a metafield on an owner resource by namespace and key. */
4461
+ /**
4462
+ * The input fields to identify a [`Metafield`](https://shopify.dev/docs/api/storefront/current/objects/Metafield) on an owner resource by namespace and key. Used as an argument to the [`metafields`](https://shopify.dev/docs/api/storefront/current/interfaces/HasMetafields#fields-metafields) field of the `HasMetafields` interface to retrieve multiple metafields in a single request.
4463
+ *
4464
+ * If you omit the namespace, then the [app-reserved namespace](https://shopify.dev/docs/apps/build/metafields#app-owned-metafields) is used by default.
4465
+ *
4466
+ */
4120
4467
  export type HasMetafieldsIdentifier = {
4121
4468
  /** The identifier for the metafield. */
4122
4469
  key: Scalars['String']['input'];
@@ -4124,7 +4471,12 @@ export type HasMetafieldsIdentifier = {
4124
4471
  namespace?: InputMaybe<Scalars['String']['input']>;
4125
4472
  };
4126
4473
 
4127
- /** Represents an image resource. */
4474
+ /**
4475
+ * An image resource with URL, dimensions, and transformation options. Used for product images, collection images, media previews, and other visual content throughout the storefront.
4476
+ *
4477
+ * The [`url`](https://shopify.dev/docs/api/storefront/current/objects/Image#field-Image.fields.url) field accepts an [`ImageTransformInput`](https://shopify.dev/docs/api/storefront/current/input-objects/ImageTransformInput) argument for resizing, cropping, scaling for retina displays, and converting between image formats. Use the [`thumbhash`](https://shopify.dev/docs/api/storefront/current/objects/Image#field-Image.fields.thumbhash) field to display lightweight placeholders while images load.
4478
+ *
4479
+ */
4128
4480
  export type Image = {
4129
4481
  __typename?: 'Image';
4130
4482
  /** A word or phrase to share the nature or contents of an image. */
@@ -4179,7 +4531,12 @@ export type Image = {
4179
4531
  width?: Maybe<Scalars['Int']['output']>;
4180
4532
  };
4181
4533
 
4182
- /** Represents an image resource. */
4534
+ /**
4535
+ * An image resource with URL, dimensions, and transformation options. Used for product images, collection images, media previews, and other visual content throughout the storefront.
4536
+ *
4537
+ * The [`url`](https://shopify.dev/docs/api/storefront/current/objects/Image#field-Image.fields.url) field accepts an [`ImageTransformInput`](https://shopify.dev/docs/api/storefront/current/input-objects/ImageTransformInput) argument for resizing, cropping, scaling for retina displays, and converting between image formats. Use the [`thumbhash`](https://shopify.dev/docs/api/storefront/current/objects/Image#field-Image.fields.thumbhash) field to display lightweight placeholders while images load.
4538
+ *
4539
+ */
4183
4540
  export type ImageTransformedSrcArgs = {
4184
4541
  crop?: InputMaybe<CropRegion>;
4185
4542
  maxHeight?: InputMaybe<Scalars['Int']['input']>;
@@ -4188,7 +4545,12 @@ export type ImageTransformedSrcArgs = {
4188
4545
  scale?: InputMaybe<Scalars['Int']['input']>;
4189
4546
  };
4190
4547
 
4191
- /** Represents an image resource. */
4548
+ /**
4549
+ * An image resource with URL, dimensions, and transformation options. Used for product images, collection images, media previews, and other visual content throughout the storefront.
4550
+ *
4551
+ * The [`url`](https://shopify.dev/docs/api/storefront/current/objects/Image#field-Image.fields.url) field accepts an [`ImageTransformInput`](https://shopify.dev/docs/api/storefront/current/input-objects/ImageTransformInput) argument for resizing, cropping, scaling for retina displays, and converting between image formats. Use the [`thumbhash`](https://shopify.dev/docs/api/storefront/current/objects/Image#field-Image.fields.thumbhash) field to display lightweight placeholders while images load.
4552
+ *
4553
+ */
4192
4554
  export type ImageUrlArgs = {
4193
4555
  transform?: InputMaybe<ImageTransformInput>;
4194
4556
  };
@@ -4284,7 +4646,12 @@ export type InContextAnnotationType = {
4284
4646
  name: Scalars['String']['output'];
4285
4647
  };
4286
4648
 
4287
- /** A language. */
4649
+ /**
4650
+ * A language available for a localized storefront experience. Provides the language name in both its native form (endonym) and translated into the current language, along with its [`LanguageCode`](https://shopify.dev/docs/api/storefront/current/enums/LanguageCode).
4651
+ *
4652
+ * Returned by the [`Localization`](https://shopify.dev/docs/api/storefront/current/objects/Localization) and [`Country`](https://shopify.dev/docs/api/storefront/current/objects/Country) objects to indicate available and active languages. Pass the `isoCode` to the [`@inContext`](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/in-context) directive to retrieve translated content in that language.
4653
+ *
4654
+ */
4288
4655
  export type Language = {
4289
4656
  __typename?: 'Language';
4290
4657
  /** The name of the language in the language itself. If the language uses capitalization, it is capitalized for a mid-sentence position. */
@@ -4295,7 +4662,12 @@ export type Language = {
4295
4662
  name: Scalars['String']['output'];
4296
4663
  };
4297
4664
 
4298
- /** Language codes supported by Shopify. */
4665
+ /**
4666
+ * Supported languages for retrieving translated storefront content. Pass a language code to the [`@inContext`](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/in-context) directive to return product titles, descriptions, and other translatable fields in that language.
4667
+ *
4668
+ * The [`Localization`](https://shopify.dev/docs/api/storefront/current/objects/Localization) object provides the list of available languages for the active country, and each [`Country`](https://shopify.dev/docs/api/storefront/current/objects/Country) in [`availableCountries`](https://shopify.dev/docs/api/storefront/current/objects/Localization#field-Localization.fields.availableCountries) includes its own available languages.
4669
+ *
4670
+ */
4299
4671
  export type LanguageCode =
4300
4672
  /** Afrikaans. */
4301
4673
  | 'AF'
@@ -4586,7 +4958,12 @@ export type LanguageCode =
4586
4958
  /** Zulu. */
4587
4959
  | 'ZU';
4588
4960
 
4589
- /** Information about the localized experiences configured for the shop. */
4961
+ /**
4962
+ * Information about the shop's configured localized experiences, including available countries and languages. The [`country`](https://shopify.dev/docs/api/storefront/current/objects/Localization#field-Localization.fields.country) and [`language`](https://shopify.dev/docs/api/storefront/current/objects/Localization#field-Localization.fields.language) fields reflect the active localization context, which you can change using the `@inContext` directive on queries.
4963
+ *
4964
+ * Use [`availableCountries`](https://shopify.dev/docs/api/storefront/current/objects/Localization#field-Localization.fields.availableCountries) to list all countries with enabled localized experiences, and [`availableLanguages`](https://shopify.dev/docs/api/storefront/current/objects/Localization#field-Localization.fields.availableLanguages) to get languages available for the currently active country. Each [`Country`](https://shopify.dev/docs/api/storefront/current/objects/Country) includes its own currency, unit system, and available languages.
4965
+ *
4966
+ */
4590
4967
  export type Localization = {
4591
4968
  __typename?: 'Localization';
4592
4969
  /** The list of countries with enabled localized experiences. */
@@ -4604,7 +4981,12 @@ export type Localization = {
4604
4981
  market: Market;
4605
4982
  };
4606
4983
 
4607
- /** Represents a location where product inventory is held. */
4984
+ /**
4985
+ * A physical store location where product inventory is held and that supports in-store pickup. Provides the location's name, address, and geographic coordinates for proximity-based sorting. Use with [`StoreAvailability`](https://shopify.dev/docs/api/storefront/current/objects/StoreAvailability) to show customers where a [`ProductVariant`](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant) is available for pickup.
4986
+ *
4987
+ * Learn more about [supporting local pickup on storefronts](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections/local-pickup).
4988
+ *
4989
+ */
4608
4990
  export type Location = HasMetafields &
4609
4991
  Node & {
4610
4992
  __typename?: 'Location';
@@ -4620,13 +5002,23 @@ export type Location = HasMetafields &
4620
5002
  name: Scalars['String']['output'];
4621
5003
  };
4622
5004
 
4623
- /** Represents a location where product inventory is held. */
5005
+ /**
5006
+ * A physical store location where product inventory is held and that supports in-store pickup. Provides the location's name, address, and geographic coordinates for proximity-based sorting. Use with [`StoreAvailability`](https://shopify.dev/docs/api/storefront/current/objects/StoreAvailability) to show customers where a [`ProductVariant`](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant) is available for pickup.
5007
+ *
5008
+ * Learn more about [supporting local pickup on storefronts](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections/local-pickup).
5009
+ *
5010
+ */
4624
5011
  export type LocationMetafieldArgs = {
4625
5012
  key: Scalars['String']['input'];
4626
5013
  namespace?: InputMaybe<Scalars['String']['input']>;
4627
5014
  };
4628
5015
 
4629
- /** Represents a location where product inventory is held. */
5016
+ /**
5017
+ * A physical store location where product inventory is held and that supports in-store pickup. Provides the location's name, address, and geographic coordinates for proximity-based sorting. Use with [`StoreAvailability`](https://shopify.dev/docs/api/storefront/current/objects/StoreAvailability) to show customers where a [`ProductVariant`](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant) is available for pickup.
5018
+ *
5019
+ * Learn more about [supporting local pickup on storefronts](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections/local-pickup).
5020
+ *
5021
+ */
4630
5022
  export type LocationMetafieldsArgs = {
4631
5023
  identifiers: Array<HasMetafieldsIdentifier>;
4632
5024
  };
@@ -4703,7 +5095,12 @@ export type LocationSortKeys =
4703
5095
  /** Sort by the `name` value. */
4704
5096
  | 'NAME';
4705
5097
 
4706
- /** Represents a mailing address for customers and shipping. */
5098
+ /**
5099
+ * A physical mailing address associated with a [`Customer`](https://shopify.dev/docs/api/storefront/current/objects/Customer) or [`Order`](https://shopify.dev/docs/api/storefront/current/objects/Order). Stores standard address components including street address, city, province, country, and postal code, along with customer name and company information.
5100
+ *
5101
+ * The address includes geographic coordinates and provides pre-formatted output through the [`formatted`](https://shopify.dev/docs/api/storefront/current/objects/MailingAddress#field-MailingAddress.fields.formatted) field, which can optionally include or exclude name and company details.
5102
+ *
5103
+ */
4707
5104
  export type MailingAddress = Node & {
4708
5105
  __typename?: 'MailingAddress';
4709
5106
  /** The first line of the address. Typically the street address or PO Box number. */
@@ -4770,7 +5167,12 @@ export type MailingAddress = Node & {
4770
5167
  zip?: Maybe<Scalars['String']['output']>;
4771
5168
  };
4772
5169
 
4773
- /** Represents a mailing address for customers and shipping. */
5170
+ /**
5171
+ * A physical mailing address associated with a [`Customer`](https://shopify.dev/docs/api/storefront/current/objects/Customer) or [`Order`](https://shopify.dev/docs/api/storefront/current/objects/Order). Stores standard address components including street address, city, province, country, and postal code, along with customer name and company information.
5172
+ *
5173
+ * The address includes geographic coordinates and provides pre-formatted output through the [`formatted`](https://shopify.dev/docs/api/storefront/current/objects/MailingAddress#field-MailingAddress.fields.formatted) field, which can optionally include or exclude name and company details.
5174
+ *
5175
+ */
4774
5176
  export type MailingAddressFormattedArgs = {
4775
5177
  withCompany?: InputMaybe<Scalars['Boolean']['input']>;
4776
5178
  withName?: InputMaybe<Scalars['Boolean']['input']>;
@@ -4802,7 +5204,12 @@ export type MailingAddressEdge = {
4802
5204
  node: MailingAddress;
4803
5205
  };
4804
5206
 
4805
- /** The input fields to create or update a mailing address. */
5207
+ /**
5208
+ * The input fields for creating or updating a [`MailingAddress`](https://shopify.dev/docs/api/storefront/current/objects/MailingAddress). Accepts standard address components including street address, city, province, country, and postal code, along with customer name and contact information.
5209
+ *
5210
+ * Used by the [`customerAddressCreate`](https://shopify.dev/docs/api/storefront/current/mutations/customerAddressCreate) and [`customerAddressUpdate`](https://shopify.dev/docs/api/storefront/current/mutations/customerAddressUpdate) mutations, and as part of [`DeliveryAddressInput`](https://shopify.dev/docs/api/storefront/current/input-objects/DeliveryAddressInput) for cart delivery preferences.
5211
+ *
5212
+ */
4806
5213
  export type MailingAddressInput = {
4807
5214
  /**
4808
5215
  * The first line of the address. Typically the street address or PO Box number.
@@ -4844,7 +5251,7 @@ export type MailingAddressInput = {
4844
5251
  };
4845
5252
 
4846
5253
  /**
4847
- * Manual discount applications capture the intentions of a discount that was manually created.
5254
+ * A discount created manually by a merchant, as opposed to [automatic discounts](https://help.shopify.com/manual/discounts/discount-methods/automatic-discounts) or [discount codes](https://help.shopify.com/manual/discounts/discount-methods/discount-codes). Implements the [`DiscountApplication`](https://shopify.dev/docs/api/storefront/current/interfaces/DiscountApplication) interface and includes a title, optional description, and the discount value as either a fixed amount or percentage.
4848
5255
  *
4849
5256
  */
4850
5257
  export type ManualDiscountApplication = DiscountApplication & {
@@ -4863,7 +5270,12 @@ export type ManualDiscountApplication = DiscountApplication & {
4863
5270
  value: PricingValue;
4864
5271
  };
4865
5272
 
4866
- /** A group of one or more regions of the world that a merchant is targeting for sales. To learn more about markets, refer to [the Shopify Markets conceptual overview](/docs/apps/markets). */
5273
+ /**
5274
+ * An audience of buyers that a merchant targets for sales. Audiences can include geographic regions, company locations, and retail locations. Markets enable localized shopping experiences with region-specific languages, currencies, and pricing.
5275
+ *
5276
+ * Each market has a unique [`handle`](https://shopify.dev/docs/api/storefront/current/objects/Market#field-Market.fields.handle) for identification and supports custom data through [`metafields`](https://shopify.dev/docs/api/storefront/current/objects/Metafield). Learn more about [building localized experiences with Shopify Markets](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/markets).
5277
+ *
5278
+ */
4867
5279
  export type Market = HasMetafields &
4868
5280
  Node & {
4869
5281
  __typename?: 'Market';
@@ -4880,18 +5292,33 @@ export type Market = HasMetafields &
4880
5292
  metafields: Array<Maybe<Metafield>>;
4881
5293
  };
4882
5294
 
4883
- /** A group of one or more regions of the world that a merchant is targeting for sales. To learn more about markets, refer to [the Shopify Markets conceptual overview](/docs/apps/markets). */
5295
+ /**
5296
+ * An audience of buyers that a merchant targets for sales. Audiences can include geographic regions, company locations, and retail locations. Markets enable localized shopping experiences with region-specific languages, currencies, and pricing.
5297
+ *
5298
+ * Each market has a unique [`handle`](https://shopify.dev/docs/api/storefront/current/objects/Market#field-Market.fields.handle) for identification and supports custom data through [`metafields`](https://shopify.dev/docs/api/storefront/current/objects/Metafield). Learn more about [building localized experiences with Shopify Markets](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/markets).
5299
+ *
5300
+ */
4884
5301
  export type MarketMetafieldArgs = {
4885
5302
  key: Scalars['String']['input'];
4886
5303
  namespace?: InputMaybe<Scalars['String']['input']>;
4887
5304
  };
4888
5305
 
4889
- /** A group of one or more regions of the world that a merchant is targeting for sales. To learn more about markets, refer to [the Shopify Markets conceptual overview](/docs/apps/markets). */
5306
+ /**
5307
+ * An audience of buyers that a merchant targets for sales. Audiences can include geographic regions, company locations, and retail locations. Markets enable localized shopping experiences with region-specific languages, currencies, and pricing.
5308
+ *
5309
+ * Each market has a unique [`handle`](https://shopify.dev/docs/api/storefront/current/objects/Market#field-Market.fields.handle) for identification and supports custom data through [`metafields`](https://shopify.dev/docs/api/storefront/current/objects/Metafield). Learn more about [building localized experiences with Shopify Markets](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/markets).
5310
+ *
5311
+ */
4890
5312
  export type MarketMetafieldsArgs = {
4891
5313
  identifiers: Array<HasMetafieldsIdentifier>;
4892
5314
  };
4893
5315
 
4894
- /** Represents a media interface. */
5316
+ /**
5317
+ * A common set of fields for media content associated with [products](https://shopify.dev/docs/api/storefront/current/objects/Product). Implementations include [`MediaImage`](https://shopify.dev/docs/api/storefront/current/objects/MediaImage) for Shopify-hosted images, [`Video`](https://shopify.dev/docs/api/storefront/current/objects/Video) for Shopify-hosted videos, [`ExternalVideo`](https://shopify.dev/docs/api/storefront/current/objects/ExternalVideo) for videos hosted on platforms like YouTube or Vimeo, and [`Model3d`](https://shopify.dev/docs/api/storefront/current/objects/Model3d) for 3D models.
5318
+ *
5319
+ * Each implementation shares fields for alt text, content type, and preview images, while adding type-specific fields like embed URLs for external videos or source files for 3D models.
5320
+ *
5321
+ */
4895
5322
  export type Media = {
4896
5323
  /** A word or phrase to share the nature or contents of a media. */
4897
5324
  alt?: Maybe<Scalars['String']['output']>;
@@ -4949,7 +5376,12 @@ export type MediaHost =
4949
5376
  /** Host for YouTube embedded videos. */
4950
5377
  | 'YOUTUBE';
4951
5378
 
4952
- /** Represents a Shopify hosted image. */
5379
+ /**
5380
+ * An image hosted on Shopify's content delivery network (CDN). Used for product images, brand logos, and other visual content across the storefront.
5381
+ *
5382
+ * The [`image`](https://shopify.dev/docs/api/storefront/current/objects/MediaImage#field-MediaImage.fields.image) field provides the actual image data with transformation options. Implements the [`Media`](https://shopify.dev/docs/api/storefront/current/interfaces/Media) interface alongside other media types like [`Video`](https://shopify.dev/docs/api/storefront/current/objects/Video) and [`Model3d`](https://shopify.dev/docs/api/storefront/current/objects/Model3d).
5383
+ *
5384
+ */
4953
5385
  export type MediaImage = Media &
4954
5386
  Node & {
4955
5387
  __typename?: 'MediaImage';
@@ -4992,8 +5424,9 @@ export type MediaPresentationFormat =
4992
5424
  | 'MODEL_VIEWER';
4993
5425
 
4994
5426
  /**
4995
- * A [navigation menu](https://help.shopify.com/manual/online-store/menus-and-links) representing a hierarchy
4996
- * of hyperlinks (items).
5427
+ * A navigation structure for building store [menus](https://help.shopify.com/manual/online-store/menus-and-links). Each menu contains [`MenuItem`](https://shopify.dev/docs/api/storefront/current/objects/MenuItem) objects that can be nested to create multi-level navigation hierarchies.
5428
+ *
5429
+ * Menu items can link to [collections](https://shopify.dev/docs/api/storefront/current/objects/Collection), [products](https://shopify.dev/docs/api/storefront/current/objects/Product), [pages](https://shopify.dev/docs/api/storefront/current/objects/Page), [blogs](https://shopify.dev/docs/api/storefront/current/objects/Blog), or external URLs. Use the [`menu`](https://shopify.dev/docs/api/storefront/current/queries/menu) query to retrieve a menu by its handle.
4997
5430
  *
4998
5431
  */
4999
5432
  export type Menu = Node & {
@@ -5010,7 +5443,12 @@ export type Menu = Node & {
5010
5443
  title: Scalars['String']['output'];
5011
5444
  };
5012
5445
 
5013
- /** A menu item within a parent menu. */
5446
+ /**
5447
+ * A navigation link within a [`Menu`](https://shopify.dev/docs/api/storefront/current/objects/Menu). Each item has a title, URL, and can link to store resources like [products](https://shopify.dev/docs/api/storefront/current/objects/Product), [collections](https://shopify.dev/docs/api/storefront/current/objects/Collection), [pages](https://shopify.dev/docs/api/storefront/current/objects/Page), [blogs](https://shopify.dev/docs/api/storefront/current/objects/Blog), or external URLs.
5448
+ *
5449
+ * Menu items support nested hierarchies through the [`items`](https://shopify.dev/docs/api/storefront/current/objects/MenuItem#field-MenuItem.fields.items) field, enabling dropdown or multi-level navigation structures. The [`tags`](https://shopify.dev/docs/api/storefront/current/objects/MenuItem#field-MenuItem.fields.tags) field filters results when the item links to a collection specifically.
5450
+ *
5451
+ */
5014
5452
  export type MenuItem = Node & {
5015
5453
  __typename?: 'MenuItem';
5016
5454
  /** A globally-unique ID. */
@@ -5073,12 +5511,16 @@ export type MenuItemType =
5073
5511
  /** A shop policy link. */
5074
5512
  | 'SHOP_POLICY';
5075
5513
 
5076
- /** The merchandise to be purchased at checkout. */
5514
+ /**
5515
+ * A [`ProductVariant`](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant) that a buyer intends to purchase at checkout.
5516
+ *
5517
+ */
5077
5518
  export type Merchandise = ProductVariant;
5078
5519
 
5079
5520
  /**
5080
- * Metafields represent custom metadata attached to a resource. Metafields can be sorted into namespaces and are
5081
- * comprised of keys, values, and value types.
5521
+ * [Custom metadata](https://shopify.dev/docs/apps/build/metafields) attached to a Shopify resource such as a [`Product`](https://shopify.dev/docs/api/storefront/current/objects/Product), [`Collection`](https://shopify.dev/docs/api/storefront/current/objects/Collection), or [`Customer`](https://shopify.dev/docs/api/storefront/current/objects/Customer). Each metafield is identified by a namespace and key, and stores a value with an associated type.
5522
+ *
5523
+ * Values are always stored as strings, but the [`type`](https://shopify.dev/docs/api/storefront/current/objects/Metafield#field-Metafield.fields.type) field indicates how to interpret the data. When a metafield's type is a resource reference, use the [`reference`](https://shopify.dev/docs/api/storefront/current/objects/Metafield#field-Metafield.fields.reference) or [`references`](https://shopify.dev/docs/api/storefront/current/objects/Metafield#field-Metafield.fields.references) fields to retrieve the linked objects. Access metafields on any resource that implements the [`HasMetafields`](https://shopify.dev/docs/api/storefront/current/interfaces/HasMetafields) interface.
5082
5524
  *
5083
5525
  */
5084
5526
  export type Metafield = Node & {
@@ -5112,8 +5554,9 @@ export type Metafield = Node & {
5112
5554
  };
5113
5555
 
5114
5556
  /**
5115
- * Metafields represent custom metadata attached to a resource. Metafields can be sorted into namespaces and are
5116
- * comprised of keys, values, and value types.
5557
+ * [Custom metadata](https://shopify.dev/docs/apps/build/metafields) attached to a Shopify resource such as a [`Product`](https://shopify.dev/docs/api/storefront/current/objects/Product), [`Collection`](https://shopify.dev/docs/api/storefront/current/objects/Collection), or [`Customer`](https://shopify.dev/docs/api/storefront/current/objects/Customer). Each metafield is identified by a namespace and key, and stores a value with an associated type.
5558
+ *
5559
+ * Values are always stored as strings, but the [`type`](https://shopify.dev/docs/api/storefront/current/objects/Metafield#field-Metafield.fields.type) field indicates how to interpret the data. When a metafield's type is a resource reference, use the [`reference`](https://shopify.dev/docs/api/storefront/current/objects/Metafield#field-Metafield.fields.reference) or [`references`](https://shopify.dev/docs/api/storefront/current/objects/Metafield#field-Metafield.fields.references) fields to retrieve the linked objects. Access metafields on any resource that implements the [`HasMetafields`](https://shopify.dev/docs/api/storefront/current/interfaces/HasMetafields) interface.
5117
5560
  *
5118
5561
  */
5119
5562
  export type MetafieldReferencesArgs = {
@@ -5144,13 +5587,9 @@ export type MetafieldDeleteUserError = DisplayableError & {
5144
5587
  };
5145
5588
 
5146
5589
  /**
5147
- * A filter used to view a subset of products in a collection matching a specific metafield value.
5590
+ * Filters products in a collection by matching a specific metafield value. Used by the [`ProductFilter`](https://shopify.dev/docs/api/storefront/current/input-objects/ProductFilter) input's `productMetafield` and `variantMetafield` fields.
5148
5591
  *
5149
- * Only the following metafield types are currently supported:
5150
- * - `number_integer`
5151
- * - `number_decimal`
5152
- * - `single_line_text_field`
5153
- * - `boolean` as of 2022-04.
5592
+ * Supports the following metafield types: `number_integer`, `number_decimal`, `single_line_text_field`, and `boolean`.
5154
5593
  *
5155
5594
  */
5156
5595
  export type MetafieldFilter = {
@@ -5162,7 +5601,10 @@ export type MetafieldFilter = {
5162
5601
  value: Scalars['String']['input'];
5163
5602
  };
5164
5603
 
5165
- /** A resource that the metafield belongs to. */
5604
+ /**
5605
+ * The Shopify resource that owns a metafield. Returned by the `Metafield` object's [`parentResource`](https://shopify.dev/docs/api/storefront/current/objects/Metafield#field-Metafield.fields.parentResource) field, enabling traversal from a metafield back to the resource it's attached to.
5606
+ *
5607
+ */
5166
5608
  export type MetafieldParentResource =
5167
5609
  | Article
5168
5610
  | Blog
@@ -5181,7 +5623,9 @@ export type MetafieldParentResource =
5181
5623
  | Shop;
5182
5624
 
5183
5625
  /**
5184
- * Returns the resource which is being referred to by a metafield.
5626
+ * The resource that a metafield points to when its type is a resource reference. Metafields can store references to other Shopify resources, and this union provides access to the actual referenced object.
5627
+ *
5628
+ * Returned by the `Metafield` object's [`reference`](https://shopify.dev/docs/api/storefront/current/objects/Metafield#field-Metafield.fields.reference) field for single references or the [`references`](https://shopify.dev/docs/api/storefront/current/objects/Metafield#field-Metafield.fields.references) field for lists.
5185
5629
  *
5186
5630
  */
5187
5631
  export type MetafieldReference =
@@ -5258,7 +5702,12 @@ export type MetafieldsSetUserErrorCode =
5258
5702
  /** The input value is too short. */
5259
5703
  | 'TOO_SHORT';
5260
5704
 
5261
- /** An instance of a user-defined model based on a MetaobjectDefinition. */
5705
+ /**
5706
+ * An instance of [custom structured data](https://shopify.dev/docs/apps/build/metaobjects) defined by a metaobject definition. Metaobjects store reusable content that extends beyond standard Shopify resources, such as size charts, author profiles, or custom content sections.
5707
+ *
5708
+ * Each metaobject contains fields that match the types and validation rules specified in its definition. [`Metafield`](https://shopify.dev/docs/api/storefront/current/objects/Metafield) references can point to metaobjects, connecting custom data with products, collections, and other resources. If the definition has the `renderable` capability, then the [`seo`](https://shopify.dev/docs/api/storefront/current/objects/Metaobject#field-Metaobject.fields.seo) field provides SEO metadata. If it has the `online_store` capability, then the [`onlineStoreUrl`](https://shopify.dev/docs/api/storefront/current/objects/Metaobject#field-Metaobject.fields.onlineStoreUrl) field returns the public URL.
5709
+ *
5710
+ */
5262
5711
  export type Metaobject = Node &
5263
5712
  OnlineStorePublishable & {
5264
5713
  __typename?: 'Metaobject';
@@ -5288,7 +5737,12 @@ export type Metaobject = Node &
5288
5737
  updatedAt: Scalars['DateTime']['output'];
5289
5738
  };
5290
5739
 
5291
- /** An instance of a user-defined model based on a MetaobjectDefinition. */
5740
+ /**
5741
+ * An instance of [custom structured data](https://shopify.dev/docs/apps/build/metaobjects) defined by a metaobject definition. Metaobjects store reusable content that extends beyond standard Shopify resources, such as size charts, author profiles, or custom content sections.
5742
+ *
5743
+ * Each metaobject contains fields that match the types and validation rules specified in its definition. [`Metafield`](https://shopify.dev/docs/api/storefront/current/objects/Metafield) references can point to metaobjects, connecting custom data with products, collections, and other resources. If the definition has the `renderable` capability, then the [`seo`](https://shopify.dev/docs/api/storefront/current/objects/Metaobject#field-Metaobject.fields.seo) field provides SEO metadata. If it has the `online_store` capability, then the [`onlineStoreUrl`](https://shopify.dev/docs/api/storefront/current/objects/Metaobject#field-Metaobject.fields.onlineStoreUrl) field returns the public URL.
5744
+ *
5745
+ */
5292
5746
  export type MetaobjectFieldArgs = {
5293
5747
  key: Scalars['String']['input'];
5294
5748
  };
@@ -5319,7 +5773,10 @@ export type MetaobjectEdge = {
5319
5773
  node: Metaobject;
5320
5774
  };
5321
5775
 
5322
- /** Provides the value of a Metaobject field. */
5776
+ /**
5777
+ * The value of a field within a [`Metaobject`](https://shopify.dev/docs/api/storefront/current/objects/Metaobject). For fields that reference other resources, use the [`reference`](https://shopify.dev/docs/api/storefront/current/objects/MetaobjectField#field-MetaobjectField.fields.reference) field for single references or [`references`](https://shopify.dev/docs/api/storefront/current/objects/MetaobjectField#field-MetaobjectField.fields.references) for lists.
5778
+ *
5779
+ */
5323
5780
  export type MetaobjectField = {
5324
5781
  __typename?: 'MetaobjectField';
5325
5782
  /** The field key. */
@@ -5338,7 +5795,10 @@ export type MetaobjectField = {
5338
5795
  value?: Maybe<Scalars['String']['output']>;
5339
5796
  };
5340
5797
 
5341
- /** Provides the value of a Metaobject field. */
5798
+ /**
5799
+ * The value of a field within a [`Metaobject`](https://shopify.dev/docs/api/storefront/current/objects/Metaobject). For fields that reference other resources, use the [`reference`](https://shopify.dev/docs/api/storefront/current/objects/MetaobjectField#field-MetaobjectField.fields.reference) field for single references or [`references`](https://shopify.dev/docs/api/storefront/current/objects/MetaobjectField#field-MetaobjectField.fields.references) for lists.
5800
+ *
5801
+ */
5342
5802
  export type MetaobjectFieldReferencesArgs = {
5343
5803
  after?: InputMaybe<Scalars['String']['input']>;
5344
5804
  before?: InputMaybe<Scalars['String']['input']>;
@@ -5403,7 +5863,7 @@ export type MoneyInput = {
5403
5863
  };
5404
5864
 
5405
5865
  /**
5406
- * A monetary value with currency.
5866
+ * A precise monetary value with its associated currency. Combines a decimal amount with a three-letter [`CurrencyCode`](https://shopify.dev/docs/api/storefront/current/enums/CurrencyCode) to express prices, costs, and other financial values. For example, 12.99 USD.
5407
5867
  *
5408
5868
  */
5409
5869
  export type MoneyV2 = {
@@ -5417,43 +5877,93 @@ export type MoneyV2 = {
5417
5877
  /** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */
5418
5878
  export type Mutation = {
5419
5879
  __typename?: 'Mutation';
5420
- /** Updates the attributes on a cart. */
5880
+ /**
5881
+ * Updates the attributes on a [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart). Attributes are custom key-value pairs that store additional information, such as gift messages, special instructions, or order notes.
5882
+ *
5883
+ */
5421
5884
  cartAttributesUpdate?: Maybe<CartAttributesUpdatePayload>;
5422
5885
  /** Updates the billing address on the cart. */
5423
5886
  cartBillingAddressUpdate?: Maybe<CartBillingAddressUpdatePayload>;
5424
5887
  /**
5425
- * Updates customer information associated with a cart.
5426
- * Buyer identity is used to determine
5427
- * [international pricing](https://shopify.dev/custom-storefronts/internationalization/international-pricing)
5428
- * and should match the customer's shipping address.
5888
+ * Updates the buyer identity on a [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart), including contact information, location, and checkout preferences. The buyer's country determines [international pricing](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/markets/international-pricing) and should match their shipping address.
5889
+ *
5890
+ * Use this mutation to associate a logged-in customer via access token, set a B2B company location, or configure checkout preferences like delivery method. Preferences prefill checkout fields but don't sync back to the cart if overwritten at checkout.
5429
5891
  *
5430
5892
  */
5431
5893
  cartBuyerIdentityUpdate?: Maybe<CartBuyerIdentityUpdatePayload>;
5432
5894
  /** Creates a clone of the specified cart with all personally identifiable information removed. */
5433
5895
  cartClone?: Maybe<CartClonePayload>;
5434
- /** Creates a new cart. */
5896
+ /**
5897
+ * Creates a new [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart) for a buyer session. You can optionally initialize the cart with merchandise lines, discount codes, gift card codes, buyer identity for international pricing, and custom attributes.
5898
+ *
5899
+ * The returned cart includes a `checkoutUrl` that directs the buyer to complete their purchase.
5900
+ *
5901
+ */
5435
5902
  cartCreate?: Maybe<CartCreatePayload>;
5436
- /** Adds delivery addresses to the cart. */
5903
+ /**
5904
+ * Adds delivery addresses to a [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart). A cart can have up to 20 delivery addresses. One address can be marked as selected for checkout, and addresses can optionally be marked as one-time use so they aren't saved to the customer's account.
5905
+ *
5906
+ */
5437
5907
  cartDeliveryAddressesAdd?: Maybe<CartDeliveryAddressesAddPayload>;
5438
- /** Removes delivery addresses from the cart. */
5908
+ /**
5909
+ * Removes delivery addresses from a [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart) by their IDs, allowing batch removal in a single request.
5910
+ *
5911
+ */
5439
5912
  cartDeliveryAddressesRemove?: Maybe<CartDeliveryAddressesRemovePayload>;
5440
- /** Replaces delivery addresses on the cart. */
5913
+ /**
5914
+ * Replaces all delivery addresses on a [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart) with a new set of addresses in a single operation. Unlike [`cartDeliveryAddressesUpdate`](https://shopify.dev/docs/api/storefront/current/mutations/cartDeliveryAddressesUpdate), which modifies existing addresses, this mutation removes all current addresses and sets the provided list as the new delivery addresses.
5915
+ *
5916
+ * One address can be marked as selected, and each address can be flagged for one-time use or configured with a specific validation strategy.
5917
+ *
5918
+ */
5441
5919
  cartDeliveryAddressesReplace?: Maybe<CartDeliveryAddressesReplacePayload>;
5442
- /** Updates one or more delivery addresses on a cart. */
5920
+ /**
5921
+ * Updates one or more delivery addresses on a [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart). Each address can be modified to change its details, set it as the pre-selected address for checkout, or mark it for one-time use so it isn't saved to the customer's account.
5922
+ *
5923
+ */
5443
5924
  cartDeliveryAddressesUpdate?: Maybe<CartDeliveryAddressesUpdatePayload>;
5444
- /** Updates the discount codes applied to the cart. */
5925
+ /**
5926
+ * Updates the discount codes applied to a [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart). This mutation replaces all existing discount codes with the provided list, so pass an empty array to remove all codes. Discount codes are case-insensitive.
5927
+ *
5928
+ * After updating, check each [`CartDiscountCode`](https://shopify.dev/docs/api/storefront/current/objects/CartDiscountCode) in the cart's [`discountCodes`](https://shopify.dev/docs/api/storefront/current/objects/Cart#field-Cart.fields.discountCodes) field to see whether the code is applicable to the cart's current contents.
5929
+ *
5930
+ */
5445
5931
  cartDiscountCodesUpdate?: Maybe<CartDiscountCodesUpdatePayload>;
5446
- /** Adds gift card codes to the cart without replacing existing ones. */
5932
+ /**
5933
+ * Adds gift card codes to a [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart) without replacing any codes already applied. Gift card codes are case-insensitive.
5934
+ *
5935
+ * To replace all gift card codes instead of adding to them, use [`cartGiftCardCodesUpdate`](https://shopify.dev/docs/api/storefront/current/mutations/cartGiftCardCodesUpdate).
5936
+ *
5937
+ */
5447
5938
  cartGiftCardCodesAdd?: Maybe<CartGiftCardCodesAddPayload>;
5448
- /** Removes the gift card codes applied to the cart. */
5939
+ /**
5940
+ * Removes gift cards from a [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart) using their IDs. You can retrieve the IDs of applied gift cards from the cart's [`appliedGiftCards`](https://shopify.dev/docs/api/storefront/current/objects/Cart#field-Cart.fields.appliedGiftCards) field.
5941
+ *
5942
+ */
5449
5943
  cartGiftCardCodesRemove?: Maybe<CartGiftCardCodesRemovePayload>;
5450
- /** Updates the gift card codes applied to the cart. */
5944
+ /**
5945
+ * Updates the gift card codes applied to the cart. Unlike [`cartGiftCardCodesAdd`](https://shopify.dev/docs/api/storefront/current/mutations/cartGiftCardCodesAdd), which adds codes without replacing existing ones, this mutation sets the gift card codes for the cart. Gift card codes are case-insensitive.
5946
+ *
5947
+ */
5451
5948
  cartGiftCardCodesUpdate?: Maybe<CartGiftCardCodesUpdatePayload>;
5452
- /** Adds a merchandise line to the cart. */
5949
+ /**
5950
+ * Adds one or more merchandise lines to an existing [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart). Each line specifies the [product variant](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant) to purchase. Quantity defaults to `1` if not provided.
5951
+ *
5952
+ * You can add up to 250 lines in a single request. Use [`CartLineInput`](https://shopify.dev/docs/api/storefront/current/input-objects/CartLineInput) to configure each line's merchandise, quantity, selling plan, custom attributes, and any parent relationships for nested line items such as warranties or add-ons.
5953
+ *
5954
+ */
5453
5955
  cartLinesAdd?: Maybe<CartLinesAddPayload>;
5454
- /** Removes one or more merchandise lines from the cart. */
5956
+ /**
5957
+ * Removes one or more merchandise lines from a [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart). Accepts up to 250 line IDs per request. Returns the updated cart along with any errors or warnings.
5958
+ *
5959
+ */
5455
5960
  cartLinesRemove?: Maybe<CartLinesRemovePayload>;
5456
- /** Updates one or more merchandise lines on a cart. */
5961
+ /**
5962
+ * Updates one or more merchandise lines on a [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart). You can modify the quantity, swap the merchandise, change custom attributes, or update the selling plan for each line. You can update a maximum of 250 lines per request.
5963
+ *
5964
+ * Omitting the [`attributes`](https://shopify.dev/docs/api/storefront/current/mutations/cartLinesUpdate#arguments-lines.fields.attributes) field or setting it to null preserves existing line attributes. Pass an empty array to clear all attributes from a line.
5965
+ *
5966
+ */
5457
5967
  cartLinesUpdate?: Maybe<CartLinesUpdatePayload>;
5458
5968
  /**
5459
5969
  * Deletes a cart metafield.
@@ -5464,18 +5974,19 @@ export type Mutation = {
5464
5974
  */
5465
5975
  cartMetafieldDelete?: Maybe<CartMetafieldDeletePayload>;
5466
5976
  /**
5467
- * Sets cart metafield values. Cart metafield values will be set regardless if they were previously created or not.
5977
+ * Sets [`Metafield`](https://shopify.dev/docs/api/storefront/current/objects/Metafield) values on a cart, creating new metafields or updating existing ones. Accepts up to 25 metafields per request.
5468
5978
  *
5469
- * Allows a maximum of 25 cart metafields to be set at a time.
5470
- *
5471
- * Cart metafields will be copied to order metafields at order creation time if there is a matching order metafield definition with the [`cart to order copyable`](https://shopify.dev/docs/apps/build/metafields/use-metafield-capabilities#cart-to-order-copyable) capability enabled.
5979
+ * Cart metafields can automatically copy to order metafields when an order is created, if there's a matching order metafield definition with the [cart to order copyable](https://shopify.dev/docs/apps/build/metafields/use-metafield-capabilities#cart-to-order-copyable) capability enabled.
5472
5980
  *
5473
5981
  * > Note:
5474
- * > This mutation won't trigger [Shopify Functions](https://shopify.dev/docs/api/functions). The changes won't be available to Shopify Functions until the buyer goes to checkout or performs another cart interaction that triggers the functions.
5982
+ * > This mutation doesn't trigger [Shopify Functions](https://shopify.dev/docs/api/functions). Changes aren't available to Shopify Functions until the buyer goes to checkout or performs another cart interaction that triggers the functions.
5475
5983
  *
5476
5984
  */
5477
5985
  cartMetafieldsSet?: Maybe<CartMetafieldsSetPayload>;
5478
- /** Updates the note on the cart. */
5986
+ /**
5987
+ * Updates the note on a [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart). The note is a text field that stores additional information, such as a personalized message from the buyer or special instructions for the order.
5988
+ *
5989
+ */
5479
5990
  cartNoteUpdate?: Maybe<CartNoteUpdatePayload>;
5480
5991
  /** Update the customer's payment method that will be used to checkout. */
5481
5992
  cartPaymentUpdate?: Maybe<CartPaymentUpdatePayload>;
@@ -5483,79 +5994,165 @@ export type Mutation = {
5483
5994
  cartPrepareForCompletion?: Maybe<CartPrepareForCompletionPayload>;
5484
5995
  /** Removes personally identifiable information from the cart. */
5485
5996
  cartRemovePersonalData?: Maybe<CartRemovePersonalDataPayload>;
5486
- /** Update the selected delivery options for a delivery group. */
5997
+ /**
5998
+ * Updates the selected delivery option for one or more [`CartDeliveryGroup`](https://shopify.dev/docs/api/storefront/current/objects/CartDeliveryGroup) objects in a cart. Each delivery group represents items shipping to a specific address and offers multiple delivery options with different costs and methods.
5999
+ *
6000
+ * Use this mutation when a customer chooses their preferred shipping method during checkout. The [`deliveryOptionHandle`](https://shopify.dev/docs/api/storefront/current/input-objects/CartSelectedDeliveryOptionInput#field-CartSelectedDeliveryOptionInput.fields.deliveryOptionHandle) identifies which [`CartDeliveryOption`](https://shopify.dev/docs/api/storefront/current/objects/CartDeliveryOption) to select for each delivery group.
6001
+ *
6002
+ */
5487
6003
  cartSelectedDeliveryOptionsUpdate?: Maybe<CartSelectedDeliveryOptionsUpdatePayload>;
5488
6004
  /** Submit the cart for checkout completion. */
5489
6005
  cartSubmitForCompletion?: Maybe<CartSubmitForCompletionPayload>;
5490
6006
  /**
5491
- * Creates a customer access token.
5492
- * The customer access token is required to modify the customer object in any way.
6007
+ * For legacy customer accounts only.
6008
+ *
6009
+ * Creates a [`CustomerAccessToken`](https://shopify.dev/docs/api/storefront/current/objects/CustomerAccessToken) using the customer's email and password. The access token is required to read or modify the [`Customer`](https://shopify.dev/docs/api/storefront/current/objects/Customer) object, such as updating account information or managing addresses.
6010
+ *
6011
+ * The token has an expiration time. Use [`customerAccessTokenRenew`](https://shopify.dev/docs/api/storefront/current/mutations/customerAccessTokenRenew) to extend the token before it expires, or create a new token if it's already expired.
6012
+ *
6013
+ * > Caution:
6014
+ * > This mutation handles customer credentials. Always transmit requests over HTTPS and never log or expose the password.
5493
6015
  *
5494
6016
  */
5495
6017
  customerAccessTokenCreate?: Maybe<CustomerAccessTokenCreatePayload>;
5496
6018
  /**
5497
- * Creates a customer access token using a
5498
- * [multipass token](https://shopify.dev/api/multipass) instead of email and
5499
- * password. A customer record is created if the customer doesn't exist. If a customer
5500
- * record already exists but the record is disabled, then the customer record is enabled.
6019
+ * Creates a [`CustomerAccessToken`](https://shopify.dev/docs/api/storefront/current/objects/CustomerAccessToken) using a [multipass token](https://shopify.dev/docs/api/multipass) instead of email and password. This enables single sign-on for customers who authenticate through an external system.
6020
+ *
6021
+ * If the customer doesn't exist in Shopify, then a new customer record is created automatically. If the customer exists but the record is disabled, then the customer record is re-enabled.
6022
+ *
6023
+ * > Caution:
6024
+ * > Multipass tokens are only valid for 15 minutes and can only be used once. Generate tokens on-the-fly when needed rather than in advance.
5501
6025
  *
5502
6026
  */
5503
6027
  customerAccessTokenCreateWithMultipass?: Maybe<CustomerAccessTokenCreateWithMultipassPayload>;
5504
- /** Permanently destroys a customer access token. */
6028
+ /**
6029
+ * Permanently destroys a [`CustomerAccessToken`](https://shopify.dev/docs/api/storefront/current/objects/CustomerAccessToken). Use this mutation when a customer explicitly signs out or when you need to revoke the token. Use [`customerAccessTokenCreate`](https://shopify.dev/docs/api/storefront/current/mutations/customerAccessTokenCreate) to generate a new token with the customer's credentials.
6030
+ *
6031
+ * > Caution:
6032
+ * > This action is irreversible. The customer needs to sign in again to obtain a new access token.
6033
+ *
6034
+ */
5505
6035
  customerAccessTokenDelete?: Maybe<CustomerAccessTokenDeletePayload>;
5506
6036
  /**
5507
- * Renews a customer access token.
6037
+ * Extends the validity of a [`CustomerAccessToken`](https://shopify.dev/docs/api/storefront/current/objects/CustomerAccessToken) before it expires. The renewed token maintains authenticated access to customer operations.
5508
6038
  *
5509
- * Access token renewal must happen *before* a token expires.
5510
- * If a token has already expired, a new one should be created instead via `customerAccessTokenCreate`.
6039
+ * Renewal must happen before the token's [`expiresAt`](https://shopify.dev/docs/api/storefront/current/objects/CustomerAccessToken#field-CustomerAccessToken.fields.expiresAt) time. If a token has already expired, then use [`customerAccessTokenCreate`](https://shopify.dev/docs/api/storefront/current/mutations/customerAccessTokenCreate) to generate a new token with the customer's credentials.
6040
+ *
6041
+ * > Caution:
6042
+ * > Store access tokens securely. Never store tokens in plain text or insecure locations, and avoid exposing them in URLs or logs.
5511
6043
  *
5512
6044
  */
5513
6045
  customerAccessTokenRenew?: Maybe<CustomerAccessTokenRenewPayload>;
5514
- /** Activates a customer. */
6046
+ /**
6047
+ * Activates a customer account using an activation token received from the [`customerCreate`](https://shopify.dev/docs/api/storefront/current/mutations/customerCreate) mutation. The customer sets their password during activation and receives a [`CustomerAccessToken`](https://shopify.dev/docs/api/storefront/current/objects/CustomerAccessToken) for authenticated access.
6048
+ *
6049
+ * For a simpler approach that doesn't require parsing the activation URL, use [`customerActivateByUrl`](https://shopify.dev/docs/api/storefront/current/mutations/customerActivateByUrl) instead.
6050
+ *
6051
+ * > Caution:
6052
+ * > This mutation handles customer credentials. Always use HTTPS and never log or expose the password or access token.
6053
+ *
6054
+ */
5515
6055
  customerActivate?: Maybe<CustomerActivatePayload>;
5516
- /** Activates a customer with the activation url received from `customerCreate`. */
6056
+ /**
6057
+ * Activates a customer account using the full activation URL from the [`customerCreate`](https://shopify.dev/docs/api/storefront/current/mutations/customerCreate) mutation. This approach simplifies activation by accepting the complete URL directly, eliminating the need to parse it for the customer ID and activation token. Returns a [`CustomerAccessToken`](https://shopify.dev/docs/api/storefront/current/objects/CustomerAccessToken) for authenticating subsequent requests.
6058
+ *
6059
+ * > Caution:
6060
+ * > Store the returned access token securely. It grants access to the customer's account data.
6061
+ *
6062
+ */
5517
6063
  customerActivateByUrl?: Maybe<CustomerActivateByUrlPayload>;
5518
- /** Creates a new address for a customer. */
6064
+ /**
6065
+ * Creates a new [`MailingAddress`](https://shopify.dev/docs/api/storefront/current/objects/MailingAddress) for a [`Customer`](https://shopify.dev/docs/api/storefront/current/objects/Customer). Use the customer's [access token](https://shopify.dev/docs/api/storefront/current/mutations/customerAddressCreate#arguments-customerAccessToken) to identify them. Successful creation returns the new address.
6066
+ *
6067
+ * Each customer can have multiple addresses.
6068
+ *
6069
+ */
5519
6070
  customerAddressCreate?: Maybe<CustomerAddressCreatePayload>;
5520
- /** Permanently deletes the address of an existing customer. */
6071
+ /**
6072
+ * Permanently deletes a specific [`MailingAddress`](https://shopify.dev/docs/api/storefront/current/objects/MailingAddress) for a [`Customer`](https://shopify.dev/docs/api/storefront/current/objects/Customer). Requires a valid [customer access token](https://shopify.dev/docs/api/storefront/current/mutations/customerAddressDelete#arguments-customerAccessToken) to authenticate the request.
6073
+ *
6074
+ * > Caution:
6075
+ * > This action is irreversible. You can't recover the deleted address.
6076
+ *
6077
+ */
5521
6078
  customerAddressDelete?: Maybe<CustomerAddressDeletePayload>;
5522
- /** Updates the address of an existing customer. */
6079
+ /**
6080
+ * Updates an existing [`MailingAddress`](https://shopify.dev/docs/api/storefront/current/objects/MailingAddress) for a [`Customer`](https://shopify.dev/docs/api/storefront/current/objects/Customer). Requires a [customer access token](https://shopify.dev/docs/api/storefront/current/mutations/customerAddressUpdate#arguments-customerAccessToken) to identify the customer, an ID to specify which address to modify, and an [`address`](https://shopify.dev/docs/api/storefront/current/input-objects/MailingAddressInput) with the updated fields.
6081
+ *
6082
+ * Successful update returns the updated [`MailingAddress`](https://shopify.dev/docs/api/storefront/current/objects/MailingAddress).
6083
+ *
6084
+ */
5523
6085
  customerAddressUpdate?: Maybe<CustomerAddressUpdatePayload>;
5524
- /** Creates a new customer. */
6086
+ /**
6087
+ * Creates a new [`Customer`](https://shopify.dev/docs/api/storefront/current/objects/Customer) account with the provided contact information and login credentials. The customer can then sign in for things such as accessing their account, viewing order history, and managing saved addresses.
6088
+ *
6089
+ * > Caution:
6090
+ * > This mutation creates customer credentials. Ensure passwords are collected securely and never logged or exposed in client-side code.
6091
+ *
6092
+ */
5525
6093
  customerCreate?: Maybe<CustomerCreatePayload>;
5526
- /** Updates the default address of an existing customer. */
6094
+ /**
6095
+ * Updates the default address of an existing [`Customer`](https://shopify.dev/docs/api/storefront/current/objects/Customer). Requires a [customer access token](https://shopify.dev/docs/api/storefront/current/mutations/customerDefaultAddressUpdate#arguments-customerAccessToken) to identify the customer and an address ID to specify which address to set as the new default.
6096
+ *
6097
+ */
5527
6098
  customerDefaultAddressUpdate?: Maybe<CustomerDefaultAddressUpdatePayload>;
5528
6099
  /**
5529
- * Sends a reset password email to the customer. The reset password
5530
- * email contains a reset password URL and token that you can pass to
5531
- * the [`customerResetByUrl`](https://shopify.dev/api/storefront/latest/mutations/customerResetByUrl) or
5532
- * [`customerReset`](https://shopify.dev/api/storefront/latest/mutations/customerReset) mutation to reset the
5533
- * customer password.
6100
+ * Sends a reset password email to the customer. The email contains a reset password URL and token that you can pass to the [`customerResetByUrl`](https://shopify.dev/docs/api/storefront/current/mutations/customerResetByUrl) or [`customerReset`](https://shopify.dev/docs/api/storefront/current/mutations/customerReset) mutation to reset the customer's password.
5534
6101
  *
5535
- * This mutation is throttled by IP. With private access,
5536
- * you can provide a [`Shopify-Storefront-Buyer-IP`](https://shopify.dev/api/usage/authentication#optional-ip-header) instead of the request IP.
5537
- * The header is case-sensitive and must be sent as `Shopify-Storefront-Buyer-IP`.
6102
+ * This mutation is throttled by IP. With private access, you can provide a [`Shopify-Storefront-Buyer-IP` header](https://shopify.dev/docs/api/usage/authentication#optional-ip-header) instead of the request IP. The header is case-sensitive.
5538
6103
  *
5539
- * Make sure that the value provided to `Shopify-Storefront-Buyer-IP` is trusted. Unthrottled access to this
5540
- * mutation presents a security risk.
6104
+ * > Caution:
6105
+ * > Ensure the value provided to `Shopify-Storefront-Buyer-IP` is trusted. Unthrottled access to this mutation presents a security risk.
5541
6106
  *
5542
6107
  */
5543
6108
  customerRecover?: Maybe<CustomerRecoverPayload>;
5544
6109
  /**
5545
- * "Resets a customers password with the token received from a reset password email. You can send a reset password email with the [`customerRecover`](https://shopify.dev/api/storefront/latest/mutations/customerRecover) mutation."
6110
+ * Resets a customer's password using the reset token from a password recovery email. On success, returns the updated [`Customer`](https://shopify.dev/docs/api/storefront/current/objects/Customer) and a new [`CustomerAccessToken`](https://shopify.dev/docs/api/storefront/current/objects/CustomerAccessToken) for immediate authentication.
6111
+ *
6112
+ * Use the [`customerRecover`](https://shopify.dev/docs/api/storefront/current/mutations/customerRecover) mutation to send the password recovery email that provides the reset token. Alternatively, use [`customerResetByUrl`](https://shopify.dev/docs/api/storefront/current/mutations/customerResetByUrl) if you have the full reset URL instead of the customer ID and token.
6113
+ *
6114
+ * > Caution:
6115
+ * > This mutation handles sensitive customer credentials. Validate password requirements on the client before submission.
5546
6116
  *
5547
6117
  */
5548
6118
  customerReset?: Maybe<CustomerResetPayload>;
5549
6119
  /**
5550
- * "Resets a customers password with the reset password URL received from a reset password email. You can send a reset password email with the [`customerRecover`](https://shopify.dev/api/storefront/latest/mutations/customerRecover) mutation."
6120
+ * Resets a customer's password using the reset URL from a password recovery email. The reset URL is generated by the [`customerRecover`](https://shopify.dev/docs/api/storefront/current/mutations/customerRecover) mutation.
6121
+ *
6122
+ * On success, returns the updated [`Customer`](https://shopify.dev/docs/api/storefront/current/objects/Customer) and a new [`CustomerAccessToken`](https://shopify.dev/docs/api/storefront/current/objects/CustomerAccessToken) for immediate authentication.
6123
+ *
6124
+ * > Caution:
6125
+ * > This mutation handles customer credentials. Ensure the new password is transmitted securely and never logged or exposed in client-side code.
5551
6126
  *
5552
6127
  */
5553
6128
  customerResetByUrl?: Maybe<CustomerResetByUrlPayload>;
5554
- /** Updates an existing customer. */
6129
+ /**
6130
+ * Updates a [customer's](https://shopify.dev/docs/api/storefront/current/objects/Customer) personal information such as name, password, and marketing preferences. Requires a valid [`CustomerAccessToken`](https://shopify.dev/docs/api/storefront/current/objects/CustomerAccessToken) to authenticate the customer making the update.
6131
+ *
6132
+ * If the customer's password is updated, then all previous access tokens become invalid. The mutation returns a new access token in the payload to maintain the customer's session.
6133
+ *
6134
+ * > Caution:
6135
+ * > Password changes invalidate all existing access tokens. Ensure your app handles the new token returned in the response to avoid logging the customer out.
6136
+ *
6137
+ */
5555
6138
  customerUpdate?: Maybe<CustomerUpdatePayload>;
5556
- /** Create a new Shop Pay payment request session. */
6139
+ /**
6140
+ * Creates a [Shop Pay payment request session](https://shopify.dev/docs/api/storefront/current/objects/ShopPayPaymentRequestSession) for processing payments. The session includes a checkout URL where customers complete their purchase and a token for subsequent operations like submitting the payment.
6141
+ *
6142
+ * The `sourceIdentifier` must be unique across all orders to ensure accurate reconciliation.
6143
+ *
6144
+ * For a complete integration guide including the JavaScript SDK setup and checkout flow, refer to the [Shop Component API documentation](https://shopify.dev/docs/api/commerce-components/pay). For implementation steps, see the [development journey guide](https://shopify.dev/docs/api/commerce-components/pay/development-journey). For common error scenarios, see the [troubleshooting guide](https://shopify.dev/docs/api/commerce-components/pay/troubleshooting-guide).
6145
+ *
6146
+ */
5557
6147
  shopPayPaymentRequestSessionCreate?: Maybe<ShopPayPaymentRequestSessionCreatePayload>;
5558
- /** Submits a Shop Pay payment request session. */
6148
+ /**
6149
+ * Finalizes a [Shop Pay payment request session](https://shopify.dev/docs/api/storefront/current/objects/ShopPayPaymentRequestSession). Call this mutation after creating a session with [`shopPayPaymentRequestSessionCreate`](https://shopify.dev/docs/api/storefront/current/mutations/shopPayPaymentRequestSessionCreate).
6150
+ *
6151
+ * The [`idempotencyKey`](https://shopify.dev/docs/api/storefront/current/mutations/shopPayPaymentRequestSessionSubmit#arguments-idempotencyKey) argument ensures the payment transaction occurs only once, preventing duplicate charges. On success, returns a [`ShopPayPaymentRequestReceipt`](https://shopify.dev/docs/api/storefront/current/objects/ShopPayPaymentRequestReceipt) with the processing status and a receipt token.
6152
+ *
6153
+ * For a complete integration guide including the JavaScript SDK setup and checkout flow, refer to the [Shop Component API documentation](https://shopify.dev/docs/api/commerce-components/pay). For implementation steps, see the [development journey guide](https://shopify.dev/docs/api/commerce-components/pay/development-journey). For common error scenarios, see the [troubleshooting guide](https://shopify.dev/docs/api/commerce-components/pay/troubleshooting-guide).
6154
+ *
6155
+ */
5559
6156
  shopPayPaymentRequestSessionSubmit?: Maybe<ShopPayPaymentRequestSessionSubmitPayload>;
5560
6157
  };
5561
6158
 
@@ -5797,10 +6394,7 @@ export type MutationShopPayPaymentRequestSessionSubmitArgs = {
5797
6394
  };
5798
6395
 
5799
6396
  /**
5800
- * An object with an ID field to support global identification, in accordance with the
5801
- * [Relay specification](https://relay.dev/graphql/objectidentification.htm#sec-Node-Interface).
5802
- * This interface is used by the [node](/docs/api/storefront/latest/queries/node)
5803
- * and [nodes](/docs/api/storefront/latest/queries/nodes) queries.
6397
+ * Enables global object identification following the [Relay specification](https://relay.dev/graphql/objectidentification.htm#sec-Node-Interface). Any type implementing this interface has a globally-unique `id` field and can be fetched directly using the [`node`](https://shopify.dev/docs/api/storefront/current/queries/node) or [`nodes`](https://shopify.dev/docs/api/storefront/current/queries/nodes) queries.
5804
6398
  *
5805
6399
  */
5806
6400
  export type Node = {
@@ -6023,7 +6617,14 @@ export type OrderFinancialStatus =
6023
6617
  /** Displayed as **Voided**. */
6024
6618
  | 'VOIDED';
6025
6619
 
6026
- /** Represents the order's aggregated fulfillment status for display purposes. */
6620
+ /**
6621
+ * The aggregated fulfillment status of an [`Order`](https://shopify.dev/docs/api/storefront/current/objects/Order), summarizing the state of all line items. Used for display purposes.
6622
+ *
6623
+ * Statuses range from unfulfilled to fully fulfilled, with intermediate states such as in progress and on hold.
6624
+ *
6625
+ * Learn more about [order statuses](https://help.shopify.com/manual/fulfillment/managing-orders/order-status).
6626
+ *
6627
+ */
6027
6628
  export type OrderFulfillmentStatus =
6028
6629
  /** Displayed as **Fulfilled**. All of the items in the order have been fulfilled. */
6029
6630
  | 'FULFILLED'
@@ -6106,7 +6707,12 @@ export type OrderSortKeys =
6106
6707
  /** Sort by the `total_price` value. */
6107
6708
  | 'TOTAL_PRICE';
6108
6709
 
6109
- /** Shopify merchants can create pages to hold static HTML content. Each Page object represents a custom page on the online store. */
6710
+ /**
6711
+ * A [custom content page](https://help.shopify.com/manual/online-store/add-edit-pages) on a merchant's store. Pages display HTML-formatted content, such as "About Us", contact details, or store policies.
6712
+ *
6713
+ * Each page has a unique [`handle`](https://shopify.dev/docs/api/storefront/current/objects/Page#field-Page.fields.handle) for URL routing and includes [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) information for search engine optimization. Pages support [`Metafield`](https://shopify.dev/docs/api/storefront/current/objects/Metafield) attachments for storing additional custom data.
6714
+ *
6715
+ */
6110
6716
  export type Page = HasMetafields &
6111
6717
  Node &
6112
6718
  OnlineStorePublishable &
@@ -6138,13 +6744,23 @@ export type Page = HasMetafields &
6138
6744
  updatedAt: Scalars['DateTime']['output'];
6139
6745
  };
6140
6746
 
6141
- /** Shopify merchants can create pages to hold static HTML content. Each Page object represents a custom page on the online store. */
6142
- export type PageMetafieldArgs = {
6143
- key: Scalars['String']['input'];
6144
- namespace?: InputMaybe<Scalars['String']['input']>;
6747
+ /**
6748
+ * A [custom content page](https://help.shopify.com/manual/online-store/add-edit-pages) on a merchant's store. Pages display HTML-formatted content, such as "About Us", contact details, or store policies.
6749
+ *
6750
+ * Each page has a unique [`handle`](https://shopify.dev/docs/api/storefront/current/objects/Page#field-Page.fields.handle) for URL routing and includes [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) information for search engine optimization. Pages support [`Metafield`](https://shopify.dev/docs/api/storefront/current/objects/Metafield) attachments for storing additional custom data.
6751
+ *
6752
+ */
6753
+ export type PageMetafieldArgs = {
6754
+ key: Scalars['String']['input'];
6755
+ namespace?: InputMaybe<Scalars['String']['input']>;
6145
6756
  };
6146
6757
 
6147
- /** Shopify merchants can create pages to hold static HTML content. Each Page object represents a custom page on the online store. */
6758
+ /**
6759
+ * A [custom content page](https://help.shopify.com/manual/online-store/add-edit-pages) on a merchant's store. Pages display HTML-formatted content, such as "About Us", contact details, or store policies.
6760
+ *
6761
+ * Each page has a unique [`handle`](https://shopify.dev/docs/api/storefront/current/objects/Page#field-Page.fields.handle) for URL routing and includes [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) information for search engine optimization. Pages support [`Metafield`](https://shopify.dev/docs/api/storefront/current/objects/Metafield) attachments for storing additional custom data.
6762
+ *
6763
+ */
6148
6764
  export type PageMetafieldsArgs = {
6149
6765
  identifiers: Array<HasMetafieldsIdentifier>;
6150
6766
  };
@@ -6252,8 +6868,7 @@ export type PredictiveSearchLimitScope =
6252
6868
  | 'EACH';
6253
6869
 
6254
6870
  /**
6255
- * A predictive search result represents a list of products, collections, pages, articles, and query suggestions
6256
- * that matches the predictive search query.
6871
+ * Returned by the [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) query to power type-ahead search experiences. Includes matching [`Product`](https://shopify.dev/docs/api/storefront/current/objects/Product), [`Collection`](https://shopify.dev/docs/api/storefront/current/objects/Collection), [`Page`](https://shopify.dev/docs/api/storefront/current/objects/Page), and [`Article`](https://shopify.dev/docs/api/storefront/current/objects/Article) objects, along with query suggestions that help customers refine their search.
6257
6872
  *
6258
6873
  */
6259
6874
  export type PredictiveSearchResult = {
@@ -6293,7 +6908,9 @@ export type PreferenceDeliveryMethodType =
6293
6908
  | 'SHIPPING';
6294
6909
 
6295
6910
  /**
6296
- * The input fields for a filter used to view a subset of products in a collection matching a specific price range.
6911
+ * A price range for filtering products in a collection. Used by the [`ProductFilter`](https://shopify.dev/docs/api/storefront/current/input-objects/ProductFilter) input's [`price`](https://shopify.dev/docs/api/storefront/current/input-objects/ProductFilter#fields-price) field.
6912
+ *
6913
+ * > Note: Omitting the [maximum](https://shopify.dev/docs/api/storefront/currents/input-objects/PriceRangeFilter#fields-max) returns all products above the [minimum](https://shopify.dev/docs/api/storefront/current/input-objects/PriceRangeFilter#fields-min).
6297
6914
  *
6298
6915
  */
6299
6916
  export type PriceRangeFilter = {
@@ -6303,7 +6920,10 @@ export type PriceRangeFilter = {
6303
6920
  min?: InputMaybe<Scalars['Float']['input']>;
6304
6921
  };
6305
6922
 
6306
- /** The value of the percentage pricing object. */
6923
+ /**
6924
+ * A percentage discount value applied to cart items or orders. Returned as part of the [`PricingValue`](https://shopify.dev/docs/api/storefront/current/unions/PricingValue) union on [discount applications](https://shopify.dev/docs/api/storefront/current/interfaces/DiscountApplication), where it represents discounts calculated as a percentage off rather than a [fixed amount](https://shopify.dev/docs/api/storefront/current/objects/MoneyV2).
6925
+ *
6926
+ */
6307
6927
  export type PricingPercentageValue = {
6308
6928
  __typename?: 'PricingPercentageValue';
6309
6929
  /** The percentage value of the object. */
@@ -6314,16 +6934,13 @@ export type PricingPercentageValue = {
6314
6934
  export type PricingValue = MoneyV2 | PricingPercentageValue;
6315
6935
 
6316
6936
  /**
6317
- * The `Product` object lets you manage products in a merchant’s store.
6937
+ * Represents an item listed in a shop's catalog.
6318
6938
  *
6319
- * Products are the goods and services that merchants offer to customers.
6320
- * They can include various details such as title, description, price, images, and options such as size or color.
6321
- * You can use [product variants](/docs/api/storefront/latest/objects/ProductVariant)
6322
- * to create or update different versions of the same product.
6323
- * You can also add or update product [media](/docs/api/storefront/latest/interfaces/Media).
6324
- * Products can be organized by grouping them into a [collection](/docs/api/storefront/latest/objects/Collection).
6939
+ * Products support multiple [product variants](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant), representing different versions of the same product, and can include various [media](https://shopify.dev/docs/api/storefront/current/interfaces/Media) types. Use the [`selectedOrFirstAvailableVariant`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.selectedOrFirstAvailableVariant) or [`variantBySelectedOptions`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.variantBySelectedOptions) fields to help customers find the right variant based on their selections.
6325
6940
  *
6326
- * Learn more about working with [products and collections](/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
6941
+ * Products can be organized into [collections](https://shopify.dev/docs/api/storefront/current/objects/Collection), associated with [selling plans](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanGroup) for subscriptions, and extended with custom data through [metafields](https://shopify.dev/docs/api/storefront/current/objects/Metafield).
6942
+ *
6943
+ * Learn more about working with [products and collections](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
6327
6944
  *
6328
6945
  */
6329
6946
  export type Product = HasMetafields &
@@ -6536,16 +7153,13 @@ export type Product = HasMetafields &
6536
7153
  };
6537
7154
 
6538
7155
  /**
6539
- * The `Product` object lets you manage products in a merchant’s store.
7156
+ * Represents an item listed in a shop's catalog.
7157
+ *
7158
+ * Products support multiple [product variants](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant), representing different versions of the same product, and can include various [media](https://shopify.dev/docs/api/storefront/current/interfaces/Media) types. Use the [`selectedOrFirstAvailableVariant`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.selectedOrFirstAvailableVariant) or [`variantBySelectedOptions`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.variantBySelectedOptions) fields to help customers find the right variant based on their selections.
6540
7159
  *
6541
- * Products are the goods and services that merchants offer to customers.
6542
- * They can include various details such as title, description, price, images, and options such as size or color.
6543
- * You can use [product variants](/docs/api/storefront/latest/objects/ProductVariant)
6544
- * to create or update different versions of the same product.
6545
- * You can also add or update product [media](/docs/api/storefront/latest/interfaces/Media).
6546
- * Products can be organized by grouping them into a [collection](/docs/api/storefront/latest/objects/Collection).
7160
+ * Products can be organized into [collections](https://shopify.dev/docs/api/storefront/current/objects/Collection), associated with [selling plans](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanGroup) for subscriptions, and extended with custom data through [metafields](https://shopify.dev/docs/api/storefront/current/objects/Metafield).
6547
7161
  *
6548
- * Learn more about working with [products and collections](/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
7162
+ * Learn more about working with [products and collections](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
6549
7163
  *
6550
7164
  */
6551
7165
  export type ProductAdjacentVariantsArgs = {
@@ -6555,16 +7169,13 @@ export type ProductAdjacentVariantsArgs = {
6555
7169
  };
6556
7170
 
6557
7171
  /**
6558
- * The `Product` object lets you manage products in a merchant’s store.
7172
+ * Represents an item listed in a shop's catalog.
7173
+ *
7174
+ * Products support multiple [product variants](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant), representing different versions of the same product, and can include various [media](https://shopify.dev/docs/api/storefront/current/interfaces/Media) types. Use the [`selectedOrFirstAvailableVariant`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.selectedOrFirstAvailableVariant) or [`variantBySelectedOptions`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.variantBySelectedOptions) fields to help customers find the right variant based on their selections.
6559
7175
  *
6560
- * Products are the goods and services that merchants offer to customers.
6561
- * They can include various details such as title, description, price, images, and options such as size or color.
6562
- * You can use [product variants](/docs/api/storefront/latest/objects/ProductVariant)
6563
- * to create or update different versions of the same product.
6564
- * You can also add or update product [media](/docs/api/storefront/latest/interfaces/Media).
6565
- * Products can be organized by grouping them into a [collection](/docs/api/storefront/latest/objects/Collection).
7176
+ * Products can be organized into [collections](https://shopify.dev/docs/api/storefront/current/objects/Collection), associated with [selling plans](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanGroup) for subscriptions, and extended with custom data through [metafields](https://shopify.dev/docs/api/storefront/current/objects/Metafield).
6566
7177
  *
6567
- * Learn more about working with [products and collections](/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
7178
+ * Learn more about working with [products and collections](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
6568
7179
  *
6569
7180
  */
6570
7181
  export type ProductCollectionsArgs = {
@@ -6576,16 +7187,13 @@ export type ProductCollectionsArgs = {
6576
7187
  };
6577
7188
 
6578
7189
  /**
6579
- * The `Product` object lets you manage products in a merchant’s store.
7190
+ * Represents an item listed in a shop's catalog.
6580
7191
  *
6581
- * Products are the goods and services that merchants offer to customers.
6582
- * They can include various details such as title, description, price, images, and options such as size or color.
6583
- * You can use [product variants](/docs/api/storefront/latest/objects/ProductVariant)
6584
- * to create or update different versions of the same product.
6585
- * You can also add or update product [media](/docs/api/storefront/latest/interfaces/Media).
6586
- * Products can be organized by grouping them into a [collection](/docs/api/storefront/latest/objects/Collection).
7192
+ * Products support multiple [product variants](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant), representing different versions of the same product, and can include various [media](https://shopify.dev/docs/api/storefront/current/interfaces/Media) types. Use the [`selectedOrFirstAvailableVariant`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.selectedOrFirstAvailableVariant) or [`variantBySelectedOptions`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.variantBySelectedOptions) fields to help customers find the right variant based on their selections.
6587
7193
  *
6588
- * Learn more about working with [products and collections](/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
7194
+ * Products can be organized into [collections](https://shopify.dev/docs/api/storefront/current/objects/Collection), associated with [selling plans](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanGroup) for subscriptions, and extended with custom data through [metafields](https://shopify.dev/docs/api/storefront/current/objects/Metafield).
7195
+ *
7196
+ * Learn more about working with [products and collections](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
6589
7197
  *
6590
7198
  */
6591
7199
  export type ProductDescriptionArgs = {
@@ -6593,16 +7201,13 @@ export type ProductDescriptionArgs = {
6593
7201
  };
6594
7202
 
6595
7203
  /**
6596
- * The `Product` object lets you manage products in a merchant’s store.
7204
+ * Represents an item listed in a shop's catalog.
7205
+ *
7206
+ * Products support multiple [product variants](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant), representing different versions of the same product, and can include various [media](https://shopify.dev/docs/api/storefront/current/interfaces/Media) types. Use the [`selectedOrFirstAvailableVariant`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.selectedOrFirstAvailableVariant) or [`variantBySelectedOptions`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.variantBySelectedOptions) fields to help customers find the right variant based on their selections.
6597
7207
  *
6598
- * Products are the goods and services that merchants offer to customers.
6599
- * They can include various details such as title, description, price, images, and options such as size or color.
6600
- * You can use [product variants](/docs/api/storefront/latest/objects/ProductVariant)
6601
- * to create or update different versions of the same product.
6602
- * You can also add or update product [media](/docs/api/storefront/latest/interfaces/Media).
6603
- * Products can be organized by grouping them into a [collection](/docs/api/storefront/latest/objects/Collection).
7208
+ * Products can be organized into [collections](https://shopify.dev/docs/api/storefront/current/objects/Collection), associated with [selling plans](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanGroup) for subscriptions, and extended with custom data through [metafields](https://shopify.dev/docs/api/storefront/current/objects/Metafield).
6604
7209
  *
6605
- * Learn more about working with [products and collections](/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
7210
+ * Learn more about working with [products and collections](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
6606
7211
  *
6607
7212
  */
6608
7213
  export type ProductImagesArgs = {
@@ -6615,16 +7220,13 @@ export type ProductImagesArgs = {
6615
7220
  };
6616
7221
 
6617
7222
  /**
6618
- * The `Product` object lets you manage products in a merchant’s store.
7223
+ * Represents an item listed in a shop's catalog.
7224
+ *
7225
+ * Products support multiple [product variants](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant), representing different versions of the same product, and can include various [media](https://shopify.dev/docs/api/storefront/current/interfaces/Media) types. Use the [`selectedOrFirstAvailableVariant`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.selectedOrFirstAvailableVariant) or [`variantBySelectedOptions`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.variantBySelectedOptions) fields to help customers find the right variant based on their selections.
6619
7226
  *
6620
- * Products are the goods and services that merchants offer to customers.
6621
- * They can include various details such as title, description, price, images, and options such as size or color.
6622
- * You can use [product variants](/docs/api/storefront/latest/objects/ProductVariant)
6623
- * to create or update different versions of the same product.
6624
- * You can also add or update product [media](/docs/api/storefront/latest/interfaces/Media).
6625
- * Products can be organized by grouping them into a [collection](/docs/api/storefront/latest/objects/Collection).
7227
+ * Products can be organized into [collections](https://shopify.dev/docs/api/storefront/current/objects/Collection), associated with [selling plans](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanGroup) for subscriptions, and extended with custom data through [metafields](https://shopify.dev/docs/api/storefront/current/objects/Metafield).
6626
7228
  *
6627
- * Learn more about working with [products and collections](/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
7229
+ * Learn more about working with [products and collections](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
6628
7230
  *
6629
7231
  */
6630
7232
  export type ProductMediaArgs = {
@@ -6637,16 +7239,13 @@ export type ProductMediaArgs = {
6637
7239
  };
6638
7240
 
6639
7241
  /**
6640
- * The `Product` object lets you manage products in a merchant’s store.
7242
+ * Represents an item listed in a shop's catalog.
6641
7243
  *
6642
- * Products are the goods and services that merchants offer to customers.
6643
- * They can include various details such as title, description, price, images, and options such as size or color.
6644
- * You can use [product variants](/docs/api/storefront/latest/objects/ProductVariant)
6645
- * to create or update different versions of the same product.
6646
- * You can also add or update product [media](/docs/api/storefront/latest/interfaces/Media).
6647
- * Products can be organized by grouping them into a [collection](/docs/api/storefront/latest/objects/Collection).
7244
+ * Products support multiple [product variants](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant), representing different versions of the same product, and can include various [media](https://shopify.dev/docs/api/storefront/current/interfaces/Media) types. Use the [`selectedOrFirstAvailableVariant`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.selectedOrFirstAvailableVariant) or [`variantBySelectedOptions`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.variantBySelectedOptions) fields to help customers find the right variant based on their selections.
6648
7245
  *
6649
- * Learn more about working with [products and collections](/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
7246
+ * Products can be organized into [collections](https://shopify.dev/docs/api/storefront/current/objects/Collection), associated with [selling plans](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanGroup) for subscriptions, and extended with custom data through [metafields](https://shopify.dev/docs/api/storefront/current/objects/Metafield).
7247
+ *
7248
+ * Learn more about working with [products and collections](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
6650
7249
  *
6651
7250
  */
6652
7251
  export type ProductMetafieldArgs = {
@@ -6655,16 +7254,13 @@ export type ProductMetafieldArgs = {
6655
7254
  };
6656
7255
 
6657
7256
  /**
6658
- * The `Product` object lets you manage products in a merchant’s store.
7257
+ * Represents an item listed in a shop's catalog.
7258
+ *
7259
+ * Products support multiple [product variants](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant), representing different versions of the same product, and can include various [media](https://shopify.dev/docs/api/storefront/current/interfaces/Media) types. Use the [`selectedOrFirstAvailableVariant`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.selectedOrFirstAvailableVariant) or [`variantBySelectedOptions`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.variantBySelectedOptions) fields to help customers find the right variant based on their selections.
6659
7260
  *
6660
- * Products are the goods and services that merchants offer to customers.
6661
- * They can include various details such as title, description, price, images, and options such as size or color.
6662
- * You can use [product variants](/docs/api/storefront/latest/objects/ProductVariant)
6663
- * to create or update different versions of the same product.
6664
- * You can also add or update product [media](/docs/api/storefront/latest/interfaces/Media).
6665
- * Products can be organized by grouping them into a [collection](/docs/api/storefront/latest/objects/Collection).
7261
+ * Products can be organized into [collections](https://shopify.dev/docs/api/storefront/current/objects/Collection), associated with [selling plans](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanGroup) for subscriptions, and extended with custom data through [metafields](https://shopify.dev/docs/api/storefront/current/objects/Metafield).
6666
7262
  *
6667
- * Learn more about working with [products and collections](/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
7263
+ * Learn more about working with [products and collections](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
6668
7264
  *
6669
7265
  */
6670
7266
  export type ProductMetafieldsArgs = {
@@ -6672,16 +7268,13 @@ export type ProductMetafieldsArgs = {
6672
7268
  };
6673
7269
 
6674
7270
  /**
6675
- * The `Product` object lets you manage products in a merchant’s store.
7271
+ * Represents an item listed in a shop's catalog.
6676
7272
  *
6677
- * Products are the goods and services that merchants offer to customers.
6678
- * They can include various details such as title, description, price, images, and options such as size or color.
6679
- * You can use [product variants](/docs/api/storefront/latest/objects/ProductVariant)
6680
- * to create or update different versions of the same product.
6681
- * You can also add or update product [media](/docs/api/storefront/latest/interfaces/Media).
6682
- * Products can be organized by grouping them into a [collection](/docs/api/storefront/latest/objects/Collection).
7273
+ * Products support multiple [product variants](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant), representing different versions of the same product, and can include various [media](https://shopify.dev/docs/api/storefront/current/interfaces/Media) types. Use the [`selectedOrFirstAvailableVariant`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.selectedOrFirstAvailableVariant) or [`variantBySelectedOptions`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.variantBySelectedOptions) fields to help customers find the right variant based on their selections.
6683
7274
  *
6684
- * Learn more about working with [products and collections](/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
7275
+ * Products can be organized into [collections](https://shopify.dev/docs/api/storefront/current/objects/Collection), associated with [selling plans](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanGroup) for subscriptions, and extended with custom data through [metafields](https://shopify.dev/docs/api/storefront/current/objects/Metafield).
7276
+ *
7277
+ * Learn more about working with [products and collections](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
6685
7278
  *
6686
7279
  */
6687
7280
  export type ProductOptionsArgs = {
@@ -6689,16 +7282,13 @@ export type ProductOptionsArgs = {
6689
7282
  };
6690
7283
 
6691
7284
  /**
6692
- * The `Product` object lets you manage products in a merchant’s store.
7285
+ * Represents an item listed in a shop's catalog.
7286
+ *
7287
+ * Products support multiple [product variants](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant), representing different versions of the same product, and can include various [media](https://shopify.dev/docs/api/storefront/current/interfaces/Media) types. Use the [`selectedOrFirstAvailableVariant`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.selectedOrFirstAvailableVariant) or [`variantBySelectedOptions`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.variantBySelectedOptions) fields to help customers find the right variant based on their selections.
6693
7288
  *
6694
- * Products are the goods and services that merchants offer to customers.
6695
- * They can include various details such as title, description, price, images, and options such as size or color.
6696
- * You can use [product variants](/docs/api/storefront/latest/objects/ProductVariant)
6697
- * to create or update different versions of the same product.
6698
- * You can also add or update product [media](/docs/api/storefront/latest/interfaces/Media).
6699
- * Products can be organized by grouping them into a [collection](/docs/api/storefront/latest/objects/Collection).
7289
+ * Products can be organized into [collections](https://shopify.dev/docs/api/storefront/current/objects/Collection), associated with [selling plans](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanGroup) for subscriptions, and extended with custom data through [metafields](https://shopify.dev/docs/api/storefront/current/objects/Metafield).
6700
7290
  *
6701
- * Learn more about working with [products and collections](/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
7291
+ * Learn more about working with [products and collections](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
6702
7292
  *
6703
7293
  */
6704
7294
  export type ProductSelectedOrFirstAvailableVariantArgs = {
@@ -6708,16 +7298,13 @@ export type ProductSelectedOrFirstAvailableVariantArgs = {
6708
7298
  };
6709
7299
 
6710
7300
  /**
6711
- * The `Product` object lets you manage products in a merchant’s store.
7301
+ * Represents an item listed in a shop's catalog.
7302
+ *
7303
+ * Products support multiple [product variants](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant), representing different versions of the same product, and can include various [media](https://shopify.dev/docs/api/storefront/current/interfaces/Media) types. Use the [`selectedOrFirstAvailableVariant`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.selectedOrFirstAvailableVariant) or [`variantBySelectedOptions`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.variantBySelectedOptions) fields to help customers find the right variant based on their selections.
6712
7304
  *
6713
- * Products are the goods and services that merchants offer to customers.
6714
- * They can include various details such as title, description, price, images, and options such as size or color.
6715
- * You can use [product variants](/docs/api/storefront/latest/objects/ProductVariant)
6716
- * to create or update different versions of the same product.
6717
- * You can also add or update product [media](/docs/api/storefront/latest/interfaces/Media).
6718
- * Products can be organized by grouping them into a [collection](/docs/api/storefront/latest/objects/Collection).
7305
+ * Products can be organized into [collections](https://shopify.dev/docs/api/storefront/current/objects/Collection), associated with [selling plans](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanGroup) for subscriptions, and extended with custom data through [metafields](https://shopify.dev/docs/api/storefront/current/objects/Metafield).
6719
7306
  *
6720
- * Learn more about working with [products and collections](/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
7307
+ * Learn more about working with [products and collections](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
6721
7308
  *
6722
7309
  */
6723
7310
  export type ProductSellingPlanGroupsArgs = {
@@ -6729,16 +7316,13 @@ export type ProductSellingPlanGroupsArgs = {
6729
7316
  };
6730
7317
 
6731
7318
  /**
6732
- * The `Product` object lets you manage products in a merchant’s store.
7319
+ * Represents an item listed in a shop's catalog.
6733
7320
  *
6734
- * Products are the goods and services that merchants offer to customers.
6735
- * They can include various details such as title, description, price, images, and options such as size or color.
6736
- * You can use [product variants](/docs/api/storefront/latest/objects/ProductVariant)
6737
- * to create or update different versions of the same product.
6738
- * You can also add or update product [media](/docs/api/storefront/latest/interfaces/Media).
6739
- * Products can be organized by grouping them into a [collection](/docs/api/storefront/latest/objects/Collection).
7321
+ * Products support multiple [product variants](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant), representing different versions of the same product, and can include various [media](https://shopify.dev/docs/api/storefront/current/interfaces/Media) types. Use the [`selectedOrFirstAvailableVariant`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.selectedOrFirstAvailableVariant) or [`variantBySelectedOptions`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.variantBySelectedOptions) fields to help customers find the right variant based on their selections.
6740
7322
  *
6741
- * Learn more about working with [products and collections](/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
7323
+ * Products can be organized into [collections](https://shopify.dev/docs/api/storefront/current/objects/Collection), associated with [selling plans](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanGroup) for subscriptions, and extended with custom data through [metafields](https://shopify.dev/docs/api/storefront/current/objects/Metafield).
7324
+ *
7325
+ * Learn more about working with [products and collections](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
6742
7326
  *
6743
7327
  */
6744
7328
  export type ProductVariantBySelectedOptionsArgs = {
@@ -6748,16 +7332,13 @@ export type ProductVariantBySelectedOptionsArgs = {
6748
7332
  };
6749
7333
 
6750
7334
  /**
6751
- * The `Product` object lets you manage products in a merchant’s store.
7335
+ * Represents an item listed in a shop's catalog.
7336
+ *
7337
+ * Products support multiple [product variants](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant), representing different versions of the same product, and can include various [media](https://shopify.dev/docs/api/storefront/current/interfaces/Media) types. Use the [`selectedOrFirstAvailableVariant`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.selectedOrFirstAvailableVariant) or [`variantBySelectedOptions`](https://shopify.dev/docs/api/storefront/current/objects/Product#field-Product.fields.variantBySelectedOptions) fields to help customers find the right variant based on their selections.
6752
7338
  *
6753
- * Products are the goods and services that merchants offer to customers.
6754
- * They can include various details such as title, description, price, images, and options such as size or color.
6755
- * You can use [product variants](/docs/api/storefront/latest/objects/ProductVariant)
6756
- * to create or update different versions of the same product.
6757
- * You can also add or update product [media](/docs/api/storefront/latest/interfaces/Media).
6758
- * Products can be organized by grouping them into a [collection](/docs/api/storefront/latest/objects/Collection).
7339
+ * Products can be organized into [collections](https://shopify.dev/docs/api/storefront/current/objects/Collection), associated with [selling plans](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanGroup) for subscriptions, and extended with custom data through [metafields](https://shopify.dev/docs/api/storefront/current/objects/Metafield).
6759
7340
  *
6760
- * Learn more about working with [products and collections](/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
7341
+ * Learn more about working with [products and collections](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections).
6761
7342
  *
6762
7343
  */
6763
7344
  export type ProductVariantsArgs = {
@@ -6769,7 +7350,12 @@ export type ProductVariantsArgs = {
6769
7350
  sortKey?: InputMaybe<ProductVariantSortKeys>;
6770
7351
  };
6771
7352
 
6772
- /** The set of valid sort keys for the ProductCollection query. */
7353
+ /**
7354
+ * Sort options for products within a [`Collection`](https://shopify.dev/docs/api/storefront/current/objects/Collection). Used by the [`products`](https://shopify.dev/docs/api/storefront/current/objects/Collection#field-Collection.fields.products) connection to order results by best-selling, price, title, creation date, or the collection's default and manual ordering.
7355
+ *
7356
+ * > Note: The [`RELEVANCE`](https://shopify.dev/docs/api/storefront/current/enums/ProductCollectionSortKeys#enums-RELEVANCE) key applies only when you specify a search query.
7357
+ *
7358
+ */
6773
7359
  export type ProductCollectionSortKeys =
6774
7360
  /** Sort by the `best-selling` value. */
6775
7361
  | 'BEST_SELLING'
@@ -6878,9 +7464,11 @@ export type ProductMediaSortKeys =
6878
7464
  | 'RELEVANCE';
6879
7465
 
6880
7466
  /**
6881
- * Product property names like "Size", "Color", and "Material" that the customers can select.
6882
- * Variants are selected based on permutations of these options.
6883
- * 255 characters limit each.
7467
+ * A customizable product attribute that customers select when purchasing, such as "Size", "Color", or "Material". Each option has a name and a set of [`ProductOptionValue`](https://shopify.dev/docs/api/storefront/current/objects/ProductOptionValue) objects representing the available choices.
7468
+ *
7469
+ * Different combinations of option values create distinct [`ProductVariant`](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant) objects. Option values can include visual swatches that display colors or images to help customers make selections. Option names have a 255-character limit.
7470
+ *
7471
+ * Learn more about [Shopify's product model](https://shopify.dev/docs/apps/build/product-merchandising/products-and-collections).
6884
7472
  *
6885
7473
  */
6886
7474
  export type ProductOption = Node & {
@@ -6899,7 +7487,11 @@ export type ProductOption = Node & {
6899
7487
  };
6900
7488
 
6901
7489
  /**
6902
- * The product option value names. For example, "Red", "Blue", and "Green" for a "Color" option.
7490
+ * A specific value for a [`ProductOption`](https://shopify.dev/docs/api/storefront/current/objects/ProductOption), such as "Red" or "Blue" for a "Color" option. Option values combine across different options to create [`ProductVariant`](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant) objects.
7491
+ *
7492
+ * Each value can include a visual swatch that displays a color or image. The [`firstSelectableVariant`](https://shopify.dev/docs/api/storefront/current/objects/ProductOptionValue#field-ProductOptionValue.fields.firstSelectableVariant) field returns the variant that combines this option value with the lowest-position values for all other options. This is useful for building product selection interfaces.
7493
+ *
7494
+ * Learn more about [Shopify's product model](https://shopify.dev/docs/apps/build/product-merchandising/products-and-collections).
6903
7495
  *
6904
7496
  */
6905
7497
  export type ProductOptionValue = Node & {
@@ -6921,7 +7513,7 @@ export type ProductOptionValue = Node & {
6921
7513
  };
6922
7514
 
6923
7515
  /**
6924
- * The product option value swatch.
7516
+ * A visual representation for a [`ProductOptionValue`](https://shopify.dev/docs/api/storefront/current/objects/ProductOptionValue), such as a color or image. Swatches help customers visualize options like "Red" or "Blue" without relying solely on text labels.
6925
7517
  *
6926
7518
  */
6927
7519
  export type ProductOptionValueSwatch = {
@@ -6932,7 +7524,10 @@ export type ProductOptionValueSwatch = {
6932
7524
  image?: Maybe<ExternalVideo | MediaImage | Model3d | Video>;
6933
7525
  };
6934
7526
 
6935
- /** The price range of the product. */
7527
+ /**
7528
+ * The minimum and maximum prices across all variants of a [`Product`](https://shopify.dev/docs/api/storefront/current/objects/Product).
7529
+ *
7530
+ */
6936
7531
  export type ProductPriceRange = {
6937
7532
  __typename?: 'ProductPriceRange';
6938
7533
  /** The highest variant's price. */
@@ -6952,7 +7547,12 @@ export type ProductRecommendationIntent =
6952
7547
  /** Offer customers a mix of products that are similar or complementary to a product for which recommendations are to be fetched. An example is substitutable products that display in a You may also like section. */
6953
7548
  | 'RELATED';
6954
7549
 
6955
- /** The set of valid sort keys for the Product query. */
7550
+ /**
7551
+ * Sorting options for the [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) query. Supports sorting products by criteria such as best-selling and price, and by product attributes such as type, and vendor.
7552
+ *
7553
+ * > Note: Use the [`RELEVANCE`](https://shopify.dev/docs/api/storefront/current/enums/ProductSortKeys#enums-RELEVANCE) key only when a search query is specified.
7554
+ *
7555
+ */
6956
7556
  export type ProductSortKeys =
6957
7557
  /** Sort by the `best_selling` value. */
6958
7558
  | 'BEST_SELLING'
@@ -6978,7 +7578,11 @@ export type ProductSortKeys =
6978
7578
  | 'VENDOR';
6979
7579
 
6980
7580
  /**
6981
- * A product variant represents a different version of a product, such as differing sizes or differing colors.
7581
+ * A specific version of a [product](https://shopify.dev/docs/api/storefront/current/objects/Product) available for sale, differentiated by options like size or color. For example, a small blue t-shirt and a large blue t-shirt are separate variants of the same product. For more information, see the docs on [Shopify's product model](https://shopify.dev/docs/apps/build/product-merchandising/products-and-collections).
7582
+ *
7583
+ * For products with quantity rules, variants enforce minimum, maximum, and increment constraints on purchases.
7584
+ *
7585
+ * Variants also support subscriptions and pre-orders through [selling plan allocations](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanAllocation) objects, bundle configurations through [product variant components](https://shopify.dev/docs/api/storefront/current/objects/ProductVariantComponent) objects, and [shop pay installments pricing](https://shopify.dev/docs/api/storefront/current/objects/ShopPayInstallmentsPricing) for flexible payment options.
6982
7586
  *
6983
7587
  */
6984
7588
  export type ProductVariant = HasMetafields &
@@ -7063,7 +7667,11 @@ export type ProductVariant = HasMetafields &
7063
7667
  };
7064
7668
 
7065
7669
  /**
7066
- * A product variant represents a different version of a product, such as differing sizes or differing colors.
7670
+ * A specific version of a [product](https://shopify.dev/docs/api/storefront/current/objects/Product) available for sale, differentiated by options like size or color. For example, a small blue t-shirt and a large blue t-shirt are separate variants of the same product. For more information, see the docs on [Shopify's product model](https://shopify.dev/docs/apps/build/product-merchandising/products-and-collections).
7671
+ *
7672
+ * For products with quantity rules, variants enforce minimum, maximum, and increment constraints on purchases.
7673
+ *
7674
+ * Variants also support subscriptions and pre-orders through [selling plan allocations](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanAllocation) objects, bundle configurations through [product variant components](https://shopify.dev/docs/api/storefront/current/objects/ProductVariantComponent) objects, and [shop pay installments pricing](https://shopify.dev/docs/api/storefront/current/objects/ShopPayInstallmentsPricing) for flexible payment options.
7067
7675
  *
7068
7676
  */
7069
7677
  export type ProductVariantComponentsArgs = {
@@ -7074,7 +7682,11 @@ export type ProductVariantComponentsArgs = {
7074
7682
  };
7075
7683
 
7076
7684
  /**
7077
- * A product variant represents a different version of a product, such as differing sizes or differing colors.
7685
+ * A specific version of a [product](https://shopify.dev/docs/api/storefront/current/objects/Product) available for sale, differentiated by options like size or color. For example, a small blue t-shirt and a large blue t-shirt are separate variants of the same product. For more information, see the docs on [Shopify's product model](https://shopify.dev/docs/apps/build/product-merchandising/products-and-collections).
7686
+ *
7687
+ * For products with quantity rules, variants enforce minimum, maximum, and increment constraints on purchases.
7688
+ *
7689
+ * Variants also support subscriptions and pre-orders through [selling plan allocations](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanAllocation) objects, bundle configurations through [product variant components](https://shopify.dev/docs/api/storefront/current/objects/ProductVariantComponent) objects, and [shop pay installments pricing](https://shopify.dev/docs/api/storefront/current/objects/ShopPayInstallmentsPricing) for flexible payment options.
7078
7690
  *
7079
7691
  */
7080
7692
  export type ProductVariantGroupedByArgs = {
@@ -7085,7 +7697,11 @@ export type ProductVariantGroupedByArgs = {
7085
7697
  };
7086
7698
 
7087
7699
  /**
7088
- * A product variant represents a different version of a product, such as differing sizes or differing colors.
7700
+ * A specific version of a [product](https://shopify.dev/docs/api/storefront/current/objects/Product) available for sale, differentiated by options like size or color. For example, a small blue t-shirt and a large blue t-shirt are separate variants of the same product. For more information, see the docs on [Shopify's product model](https://shopify.dev/docs/apps/build/product-merchandising/products-and-collections).
7701
+ *
7702
+ * For products with quantity rules, variants enforce minimum, maximum, and increment constraints on purchases.
7703
+ *
7704
+ * Variants also support subscriptions and pre-orders through [selling plan allocations](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanAllocation) objects, bundle configurations through [product variant components](https://shopify.dev/docs/api/storefront/current/objects/ProductVariantComponent) objects, and [shop pay installments pricing](https://shopify.dev/docs/api/storefront/current/objects/ShopPayInstallmentsPricing) for flexible payment options.
7089
7705
  *
7090
7706
  */
7091
7707
  export type ProductVariantMetafieldArgs = {
@@ -7094,7 +7710,11 @@ export type ProductVariantMetafieldArgs = {
7094
7710
  };
7095
7711
 
7096
7712
  /**
7097
- * A product variant represents a different version of a product, such as differing sizes or differing colors.
7713
+ * A specific version of a [product](https://shopify.dev/docs/api/storefront/current/objects/Product) available for sale, differentiated by options like size or color. For example, a small blue t-shirt and a large blue t-shirt are separate variants of the same product. For more information, see the docs on [Shopify's product model](https://shopify.dev/docs/apps/build/product-merchandising/products-and-collections).
7714
+ *
7715
+ * For products with quantity rules, variants enforce minimum, maximum, and increment constraints on purchases.
7716
+ *
7717
+ * Variants also support subscriptions and pre-orders through [selling plan allocations](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanAllocation) objects, bundle configurations through [product variant components](https://shopify.dev/docs/api/storefront/current/objects/ProductVariantComponent) objects, and [shop pay installments pricing](https://shopify.dev/docs/api/storefront/current/objects/ShopPayInstallmentsPricing) for flexible payment options.
7098
7718
  *
7099
7719
  */
7100
7720
  export type ProductVariantMetafieldsArgs = {
@@ -7102,7 +7722,11 @@ export type ProductVariantMetafieldsArgs = {
7102
7722
  };
7103
7723
 
7104
7724
  /**
7105
- * A product variant represents a different version of a product, such as differing sizes or differing colors.
7725
+ * A specific version of a [product](https://shopify.dev/docs/api/storefront/current/objects/Product) available for sale, differentiated by options like size or color. For example, a small blue t-shirt and a large blue t-shirt are separate variants of the same product. For more information, see the docs on [Shopify's product model](https://shopify.dev/docs/apps/build/product-merchandising/products-and-collections).
7726
+ *
7727
+ * For products with quantity rules, variants enforce minimum, maximum, and increment constraints on purchases.
7728
+ *
7729
+ * Variants also support subscriptions and pre-orders through [selling plan allocations](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanAllocation) objects, bundle configurations through [product variant components](https://shopify.dev/docs/api/storefront/current/objects/ProductVariantComponent) objects, and [shop pay installments pricing](https://shopify.dev/docs/api/storefront/current/objects/ShopPayInstallmentsPricing) for flexible payment options.
7106
7730
  *
7107
7731
  */
7108
7732
  export type ProductVariantQuantityPriceBreaksArgs = {
@@ -7113,7 +7737,11 @@ export type ProductVariantQuantityPriceBreaksArgs = {
7113
7737
  };
7114
7738
 
7115
7739
  /**
7116
- * A product variant represents a different version of a product, such as differing sizes or differing colors.
7740
+ * A specific version of a [product](https://shopify.dev/docs/api/storefront/current/objects/Product) available for sale, differentiated by options like size or color. For example, a small blue t-shirt and a large blue t-shirt are separate variants of the same product. For more information, see the docs on [Shopify's product model](https://shopify.dev/docs/apps/build/product-merchandising/products-and-collections).
7741
+ *
7742
+ * For products with quantity rules, variants enforce minimum, maximum, and increment constraints on purchases.
7743
+ *
7744
+ * Variants also support subscriptions and pre-orders through [selling plan allocations](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanAllocation) objects, bundle configurations through [product variant components](https://shopify.dev/docs/api/storefront/current/objects/ProductVariantComponent) objects, and [shop pay installments pricing](https://shopify.dev/docs/api/storefront/current/objects/ShopPayInstallmentsPricing) for flexible payment options.
7117
7745
  *
7118
7746
  */
7119
7747
  export type ProductVariantSellingPlanAllocationsArgs = {
@@ -7125,7 +7753,11 @@ export type ProductVariantSellingPlanAllocationsArgs = {
7125
7753
  };
7126
7754
 
7127
7755
  /**
7128
- * A product variant represents a different version of a product, such as differing sizes or differing colors.
7756
+ * A specific version of a [product](https://shopify.dev/docs/api/storefront/current/objects/Product) available for sale, differentiated by options like size or color. For example, a small blue t-shirt and a large blue t-shirt are separate variants of the same product. For more information, see the docs on [Shopify's product model](https://shopify.dev/docs/apps/build/product-merchandising/products-and-collections).
7757
+ *
7758
+ * For products with quantity rules, variants enforce minimum, maximum, and increment constraints on purchases.
7759
+ *
7760
+ * Variants also support subscriptions and pre-orders through [selling plan allocations](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanAllocation) objects, bundle configurations through [product variant components](https://shopify.dev/docs/api/storefront/current/objects/ProductVariantComponent) objects, and [shop pay installments pricing](https://shopify.dev/docs/api/storefront/current/objects/ShopPayInstallmentsPricing) for flexible payment options.
7129
7761
  *
7130
7762
  */
7131
7763
  export type ProductVariantStoreAvailabilityArgs = {
@@ -7138,7 +7770,9 @@ export type ProductVariantStoreAvailabilityArgs = {
7138
7770
  };
7139
7771
 
7140
7772
  /**
7141
- * Represents a component of a bundle variant.
7773
+ * An individual product variant included in a [fixed bundle](https://shopify.dev/docs/apps/build/product-merchandising/bundles). Fixed bundles group multiple products together and sell them as a single unit, with the bundle's inventory determined by its components.
7774
+ *
7775
+ * Access components through the `ProductVariant` object's [`components`](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant#field-ProductVariant.fields.components) field.
7142
7776
  *
7143
7777
  */
7144
7778
  export type ProductVariantComponent = {
@@ -7303,25 +7937,48 @@ export type QuantityRule = {
7303
7937
  minimum: Scalars['Int']['output'];
7304
7938
  };
7305
7939
 
7306
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
7940
+ /**
7941
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
7942
+ *
7943
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
7944
+ *
7945
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
7946
+ *
7947
+ */
7307
7948
  export type QueryRoot = {
7308
7949
  __typename?: 'QueryRoot';
7309
- /** Fetch a specific Article by its ID. */
7950
+ /**
7951
+ * Returns an [`Article`](https://shopify.dev/docs/api/storefront/current/objects/Article) by its ID. Each article belongs to a [`Blog`](https://shopify.dev/docs/api/storefront/current/objects/Blog) and includes content in both plain text and HTML formats, [`ArticleAuthor`](https://shopify.dev/docs/api/storefront/current/objects/ArticleAuthor) information, [`Comment`](https://shopify.dev/docs/api/storefront/current/objects/Comment) objects, tags, and [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) data.
7952
+ *
7953
+ */
7310
7954
  article?: Maybe<Article>;
7311
- /** List of the shop's articles. */
7955
+ /**
7956
+ * Returns a paginated list of [`Article`](https://shopify.dev/docs/api/storefront/current/objects/Article) objects from the shop's [`Blog`](https://shopify.dev/docs/api/storefront/current/objects/Blog) objects. Each article is a blog post containing content, author information, tags, and optional images.
7957
+ *
7958
+ * Use the `query` argument to filter results by author, blog title, tags, or date fields. Sort results using the `sortKey` argument and reverse them with the `reverse` argument.
7959
+ *
7960
+ */
7312
7961
  articles: ArticleConnection;
7313
- /** Fetch a specific `Blog` by one of its unique attributes. */
7962
+ /**
7963
+ * Retrieves a [`Blog`](https://shopify.dev/docs/api/storefront/current/objects/Blog) by its handle or ID. A blog organizes [`Article`](https://shopify.dev/docs/api/storefront/current/objects/Article) objects for the online store and includes author information, [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) settings, and custom [`Metafield`](https://shopify.dev/docs/api/storefront/current/objects/Metafield) objects.
7964
+ *
7965
+ */
7314
7966
  blog?: Maybe<Blog>;
7315
7967
  /**
7316
- * Find a blog by its handle.
7968
+ * Retrieves a [`Blog`](https://shopify.dev/docs/api/storefront/current/objects/Blog) by its handle. A blog organizes [`Article`](https://shopify.dev/docs/api/storefront/current/objects/Article) objects for the online store and includes author information, [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) settings, and custom [`Metafield`](https://shopify.dev/docs/api/storefront/current/objects/Metafield) objects.
7969
+ *
7317
7970
  * @deprecated Use `blog` instead.
7318
7971
  */
7319
7972
  blogByHandle?: Maybe<Blog>;
7320
- /** List of the shop's blogs. */
7973
+ /**
7974
+ * Returns a paginated list of the shop's [`Blog`](https://shopify.dev/docs/api/storefront/current/objects/Blog) objects. Each blog serves as a container for [`Article`](https://shopify.dev/docs/api/storefront/current/objects/Article) objects.
7975
+ *
7976
+ */
7321
7977
  blogs: BlogConnection;
7322
7978
  /**
7323
- * Retrieve a cart by its ID. For more information, refer to
7324
- * [Manage a cart with the Storefront API](https://shopify.dev/custom-storefronts/cart/manage).
7979
+ * Returns a [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart) by its ID. The cart contains the merchandise lines a buyer intends to purchase, along with estimated costs, applied discounts, gift cards, and delivery options.
7980
+ *
7981
+ * Use the [`checkoutUrl`](https://shopify.dev/docs/api/storefront/latest/queries/cart#returns-Cart.fields.checkoutUrl) field to redirect buyers to Shopify's web checkout when they're ready to complete their purchase. For more information, refer to [Manage a cart with the Storefront API](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/cart/manage).
7325
7982
  *
7326
7983
  */
7327
7984
  cart?: Maybe<Cart>;
@@ -7330,38 +7987,73 @@ export type QueryRoot = {
7330
7987
  *
7331
7988
  */
7332
7989
  cartCompletionAttempt?: Maybe<CartCompletionAttemptResult>;
7333
- /** Fetch a specific `Collection` by one of its unique attributes. */
7990
+ /**
7991
+ * Retrieves a single [`Collection`](https://shopify.dev/docs/api/storefront/current/objects/Collection) by its ID or handle. Use the [`products`](https://shopify.dev/docs/api/storefront/current/objects/Collection#field-Collection.fields.products) field to access items in the collection.
7992
+ *
7993
+ */
7334
7994
  collection?: Maybe<Collection>;
7335
7995
  /**
7336
- * Find a collection by its handle.
7996
+ * Retrieves a [`Collection`](https://shopify.dev/docs/api/storefront/current/objects/Collection) by its URL-friendly handle. Handles are automatically generated from collection titles but merchants can customize them.
7997
+ *
7337
7998
  * @deprecated Use `collection` instead.
7338
7999
  */
7339
8000
  collectionByHandle?: Maybe<Collection>;
7340
- /** List of the shop’s collections. */
8001
+ /**
8002
+ * Returns a paginated list of the shop's [collections](https://shopify.dev/docs/api/storefront/current/objects/Collection). Each `Collection` object includes a nested connection to its [products](https://shopify.dev/docs/api/storefront/current/objects/Collection#field-Collection.fields.products).
8003
+ *
8004
+ */
7341
8005
  collections: CollectionConnection;
7342
8006
  /**
7343
- * The customer associated with the given access token. Tokens are obtained by using the
7344
- * [`customerAccessTokenCreate` mutation](https://shopify.dev/docs/api/storefront/latest/mutations/customerAccessTokenCreate).
8007
+ * Retrieves the [`Customer`](https://shopify.dev/docs/api/storefront/current/objects/Customer) associated with the provided access token. Use the [`customerAccessTokenCreate`](https://shopify.dev/docs/api/storefront/current/mutations/customerAccessTokenCreate) mutation to obtain an access token using legacy customer account authentication (email and password).
8008
+ *
8009
+ * The returned customer includes data such as contact information, [addresses](https://shopify.dev/docs/api/storefront/current/objects/MailingAddress), [orders](https://shopify.dev/docs/api/storefront/current/objects/Order), and [custom data](https://shopify.dev/docs/apps/build/custom-data) associated with the customer.
7345
8010
  *
7346
8011
  */
7347
8012
  customer?: Maybe<Customer>;
7348
- /** Returns the localized experiences configured for the shop. */
8013
+ /**
8014
+ * Returns the shop's localization settings. Use this query to build [country and language selectors](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/markets) for your storefront.
8015
+ *
8016
+ * The [`country`](https://shopify.dev/docs/api/storefront/latest/queries/localization#returns-Localization.fields.country) and [`language`](https://shopify.dev/docs/api/storefront/latest/queries/localization#returns-Localization.fields.language) fields reflect the active localized experience. To change the context, use the [`@inContext`](https://shopify.dev/docs/api/storefront#directives) directive with your desired country or language code.
8017
+ *
8018
+ */
7349
8019
  localization: Localization;
7350
8020
  /**
7351
- * List of the shop's locations that support in-store pickup.
8021
+ * Returns shop locations that support in-store pickup. Use the `near` argument with [`GeoCoordinateInput`](https://shopify.dev/docs/api/storefront/current/input-objects/GeoCoordinateInput) to sort results by proximity to the customer's location.
7352
8022
  *
7353
- * When sorting by distance, you must specify a location via the `near` argument.
8023
+ * When sorting by distance, set `sortKey` to [`DISTANCE`](https://shopify.dev/docs/api/storefront/current/queries/locations#arguments-sortKey.enums.DISTANCE) and provide coordinates using the [`near`](https://shopify.dev/docs/api/storefront/current/queries/locations#arguments-near) argument.
7354
8024
  *
8025
+ * Learn more about [supporting local pickup on storefronts](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections/local-pickup).
7355
8026
  *
7356
8027
  */
7357
8028
  locations: LocationConnection;
7358
- /** Retrieve a [navigation menu](https://help.shopify.com/manual/online-store/menus-and-links) by its handle. */
8029
+ /**
8030
+ * Retrieves a [`Menu`](https://shopify.dev/docs/api/storefront/current/objects/Menu) by its handle. Menus are [hierarchical navigation structures](https://help.shopify.com/manual/online-store/menus-and-links) that merchants configure for their storefront, such as header and footer navigation.
8031
+ *
8032
+ * Each menu contains [`MenuItem`](https://shopify.dev/docs/api/storefront/current/objects/MenuItem) objects that can nest up to three levels deep, with each item linking to [collections](https://shopify.dev/docs/api/storefront/current/objects/Collection), [products](https://shopify.dev/docs/api/storefront/current/objects/Product), [pages](https://shopify.dev/docs/api/storefront/current/objects/Page), [blogs](https://shopify.dev/docs/api/storefront/current/objects/Blog), or external URLs.
8033
+ *
8034
+ */
7359
8035
  menu?: Maybe<Menu>;
7360
- /** Fetch a specific Metaobject by one of its unique identifiers. */
8036
+ /**
8037
+ * Retrieves a single [`Metaobject`](https://shopify.dev/docs/api/storefront/current/objects/Metaobject) by either its [`global ID`](https://shopify.dev/docs/api/storefront/current/queries/metaobject#arguments-id) or its [`handle`](https://shopify.dev/docs/api/storefront/current/queries/metaobject#arguments-handle).
8038
+ *
8039
+ * > Note:
8040
+ * > When using the handle, you must also provide the metaobject type because handles are only unique within a type.
8041
+ *
8042
+ */
7361
8043
  metaobject?: Maybe<Metaobject>;
7362
- /** All active metaobjects for the shop. */
8044
+ /**
8045
+ * Returns a paginated list of [`Metaobject`](https://shopify.dev/docs/api/storefront/current/objects/Metaobject) entries for a specific type. Metaobjects are [custom data structures](https://shopify.dev/docs/apps/build/metaobjects) that extend Shopify's data model with merchant-defined or app-defined content like size charts, product highlights, or custom sections.
8046
+ *
8047
+ * The required `type` argument specifies which metaobject type to retrieve. You can sort results by `id` or `updated_at` using the `sortKey` argument.
8048
+ *
8049
+ */
7363
8050
  metaobjects: MetaobjectConnection;
7364
- /** Returns a specific node by ID. */
8051
+ /**
8052
+ * Retrieves any object that implements the [`Node`](https://shopify.dev/docs/api/storefront/current/interfaces/Node) interface by its globally-unique ID. Use inline fragments to access type-specific fields on the returned object.
8053
+ *
8054
+ * This query follows the [Relay specification](https://relay.dev/graphql/objectidentification.htm#sec-Node-Interface) and is commonly used for refetching objects when you have their ID but need updated data.
8055
+ *
8056
+ */
7365
8057
  node?: Maybe<
7366
8058
  | AppliedGiftCard
7367
8059
  | Article
@@ -7401,7 +8093,12 @@ export type QueryRoot = {
7401
8093
  | UrlRedirect
7402
8094
  | Video
7403
8095
  >;
7404
- /** Returns the list of nodes with the given IDs. */
8096
+ /**
8097
+ * Retrieves multiple objects by their global IDs in a single request. Any object that implements the [`Node`](https://shopify.dev/docs/api/storefront/current/interfaces/Node) interface can be fetched, including [products](https://shopify.dev/docs/api/storefront/current/objects/Product), [collections](https://shopify.dev/docs/api/storefront/current/objects/Collection), and [pages](https://shopify.dev/docs/api/storefront/current/objects/Page).
8098
+ *
8099
+ * Use inline fragments to access type-specific fields on the returned objects. The input accepts up to 250 IDs.
8100
+ *
8101
+ */
7405
8102
  nodes: Array<
7406
8103
  Maybe<
7407
8104
  | AppliedGiftCard
@@ -7443,61 +8140,121 @@ export type QueryRoot = {
7443
8140
  | Video
7444
8141
  >
7445
8142
  >;
7446
- /** Fetch a specific `Page` by one of its unique attributes. */
8143
+ /**
8144
+ * Retrieves a [`Page`](https://shopify.dev/docs/api/storefront/current/objects/Page) by its [`handle`](https://shopify.dev/docs/api/storefront/current/queries/page#arguments-handle) or [`id`](https://shopify.dev/docs/api/storefront/current/queries/page#arguments-id). Pages are static content pages that merchants display outside their product catalog, such as "About Us," "Contact," or policy pages.
8145
+ *
8146
+ * The returned page includes information such as the [HTML body content](https://shopify.dev/docs/api/storefront/current/queries/page#returns-Page.fields.body), [`SEO`](https://shopify.dev/docs/api/storefront/current/objects/SEO) information, and any associated [`Metafield`](https://shopify.dev/docs/api/storefront/current/objects/Metafield) objects.
8147
+ *
8148
+ */
7447
8149
  page?: Maybe<Page>;
7448
8150
  /**
7449
- * Find a page by its handle.
8151
+ * Retrieves a [`Page`](https://shopify.dev/docs/api/storefront/current/objects/Page) by its handle.
8152
+ *
7450
8153
  * @deprecated Use `page` instead.
7451
8154
  */
7452
8155
  pageByHandle?: Maybe<Page>;
7453
- /** List of the shop's pages. */
8156
+ /**
8157
+ * Returns a paginated list of the shop's content [pages](https://shopify.dev/docs/api/storefront/current/objects/Page). Pages are custom HTML content like "About Us", "Contact", or policy information that merchants display outside their product catalog.
8158
+ *
8159
+ */
7454
8160
  pages: PageConnection;
7455
8161
  /** Settings related to payments. */
7456
8162
  paymentSettings: PaymentSettings;
7457
- /** List of the predictive search results. */
8163
+ /**
8164
+ * Returns suggested results as customers type in a search field, enabling type-ahead search experiences. The query matches [products](https://shopify.dev/docs/api/storefront/current/objects/Product), [collections](https://shopify.dev/docs/api/storefront/current/objects/Collection), [pages](https://shopify.dev/docs/api/storefront/current/objects/Page), and [articles](https://shopify.dev/docs/api/storefront/current/objects/Article) based on partial search terms, and also provides [search query suggestions](https://shopify.dev/docs/api/storefront/current/objects/SearchQuerySuggestion) to help customers refine their search.
8165
+ *
8166
+ * You can filter results by resource type and limit the quantity. The [`limitScope`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch#arguments-limitScope) argument controls whether limits apply across all result types or per type. Use [`unavailableProducts`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch#arguments-unavailableProducts) to control how out-of-stock products appear in results.
8167
+ *
8168
+ */
7458
8169
  predictiveSearch?: Maybe<PredictiveSearchResult>;
7459
- /** Fetch a specific `Product` by one of its unique attributes. */
8170
+ /**
8171
+ * Retrieves a single [`Product`](https://shopify.dev/docs/api/storefront/current/objects/Product) by its ID or handle. Use this query to build product detail pages, access variant and pricing information, or fetch product media and [metafields](https://shopify.dev/docs/api/storefront/current/objects/Metafield). See some [examples of querying products](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections/getting-started).
8172
+ *
8173
+ */
7460
8174
  product?: Maybe<Product>;
7461
8175
  /**
7462
- * Find a product by its handle.
8176
+ * Retrieves a [`Product`](https://shopify.dev/docs/api/storefront/current/objects/Product) by its handle. The handle is a URL-friendly identifier that's automatically generated from the product's title. If no product exists with the specified handle, returns `null`.
8177
+ *
7463
8178
  * @deprecated Use `product` instead.
7464
8179
  */
7465
8180
  productByHandle?: Maybe<Product>;
7466
8181
  /**
7467
- * Find recommended products related to a given `product_id`.
7468
- * To learn more about how recommendations are generated, see
7469
- * [*Showing product recommendations on product pages*](https://help.shopify.com/themes/development/recommended-products).
8182
+ * Returns recommended products for a given product, identified by either ID or handle. Use the [`intent`](https://shopify.dev/docs/api/storefront/current/enums/ProductRecommendationIntent) argument to control the recommendation strategy.
8183
+ *
8184
+ * Shopify [auto-generates related recommendations](https://shopify.dev/docs/storefronts/themes/product-merchandising/recommendations) based on sales data, product descriptions, and collection relationships. Complementary recommendations require [manual configuration](https://help.shopify.com/manual/online-store/storefront-search/search-and-discovery-recommendations) through the Shopify Search & Discovery app. Returns up to ten [`Product`](https://shopify.dev/docs/api/storefront/current/objects/Product) objects.
7470
8185
  *
7471
8186
  */
7472
8187
  productRecommendations?: Maybe<Array<Product>>;
7473
8188
  /**
7474
- * Tags added to products.
7475
- * Additional access scope required: unauthenticated_read_product_tags.
8189
+ * Returns a paginated list of all tags that have been added to [products](https://shopify.dev/docs/api/storefront/current/objects/Product) in the shop. Useful for building tag-based product filtering or navigation in a storefront.
7476
8190
  *
7477
8191
  */
7478
8192
  productTags: StringConnection;
7479
- /** List of product types for the shop's products that are published to your app. */
8193
+ /**
8194
+ * Returns a list of product types from the shop's [`Product`](https://shopify.dev/docs/api/storefront/current/objects/Product) objects that are published to your app. Use this query to build [filtering interfaces](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections/filter-products) or navigation menus based on product categorization.
8195
+ *
8196
+ */
7480
8197
  productTypes: StringConnection;
7481
- /** Returns a list of the shop's products. For storefront search, use the [`search`](https://shopify.dev/docs/api/storefront/latest/queries/search) query. */
8198
+ /**
8199
+ * Returns a paginated list of the shop's [products](https://shopify.dev/docs/api/storefront/current/objects/Product).
8200
+ *
8201
+ * For full-text storefront search, use the [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) query instead.
8202
+ *
8203
+ */
7482
8204
  products: ProductConnection;
7483
- /** The list of public Storefront API versions, including supported, release candidate and unstable versions. */
8205
+ /**
8206
+ * Returns all public Storefront [API versions](https://shopify.dev/docs/api/storefront/current/objects/ApiVersion), including supported, release candidate, and unstable versions.
8207
+ *
8208
+ */
7484
8209
  publicApiVersions: Array<ApiVersion>;
7485
- /** List of the search results. */
8210
+ /**
8211
+ * Returns paginated search results for [`Product`](https://shopify.dev/docs/api/storefront/current/objects/Product), [`Page`](https://shopify.dev/docs/api/storefront/current/objects/Page), and [`Article`](https://shopify.dev/docs/api/storefront/current/objects/Article) resources based on a query string. Results are sorted by relevance by default.
8212
+ *
8213
+ * The response includes the total result count and available product filters for building [faceted search interfaces](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections/filter-products). Use the [`prefix`](https://shopify.dev/docs/api/storefront/current/enums/SearchPrefixQueryType) argument to enable partial word matching on the last search term, allowing queries like "winter snow" to match "snowboard" or "snowshoe".
8214
+ *
8215
+ */
7486
8216
  search: SearchResultItemConnection;
7487
- /** The shop associated with the storefront access token. */
8217
+ /**
8218
+ * Returns the [`Shop`](https://shopify.dev/docs/api/storefront/current/objects/Shop) associated with the storefront access token. The `Shop` object provides general store information such as the shop name, description, and primary domain.
8219
+ *
8220
+ * Use this query to access data like store policies, [`PaymentSettings`](https://shopify.dev/docs/api/storefront/current/objects/PaymentSettings), [`Brand`](https://shopify.dev/docs/api/storefront/current/objects/Brand) configuration, and shipping destinations. It also exposes [`ShopPayInstallmentsPricing`](https://shopify.dev/docs/api/storefront/current/objects/ShopPayInstallmentsPricing) and [`SocialLoginProvider`](https://shopify.dev/docs/api/storefront/current/objects/SocialLoginProvider) options for customer accounts.
8221
+ *
8222
+ */
7488
8223
  shop: Shop;
7489
- /** Contains all fields required to generate sitemaps. */
8224
+ /**
8225
+ * Returns sitemap data for a specific resource type, enabling headless storefronts to generate XML sitemaps for search engine optimization. The query provides a page count and paginated access to resources like [`Product`](https://shopify.dev/docs/api/storefront/current/objects/Product), [`Collection`](https://shopify.dev/docs/api/storefront/current/objects/Collection), [`Page`](https://shopify.dev/docs/api/storefront/current/objects/Page), and [`Blog`](https://shopify.dev/docs/api/storefront/current/objects/Blog) objects.
8226
+ *
8227
+ * When paginating through resources, the number of items per page varies from 0 to 250, and empty pages can occur without indicating the end of results. Always check [`hasNextPage`](https://shopify.dev/docs/api/storefront/current/objects/PaginatedSitemapResources#field-PaginatedSitemapResources.fields.hasNextPage) to determine if more pages are available.
8228
+ *
8229
+ */
7490
8230
  sitemap: Sitemap;
7491
- /** A list of redirects for a shop. */
8231
+ /**
8232
+ * Returns a paginated list of [`UrlRedirect`](https://shopify.dev/docs/api/storefront/current/objects/UrlRedirect) objects configured for the shop. Each redirect maps an old path to a target location.
8233
+ *
8234
+ */
7492
8235
  urlRedirects: UrlRedirectConnection;
7493
8236
  };
7494
8237
 
7495
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8238
+ /**
8239
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8240
+ *
8241
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8242
+ *
8243
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8244
+ *
8245
+ */
7496
8246
  export type QueryRootArticleArgs = {
7497
8247
  id: Scalars['ID']['input'];
7498
8248
  };
7499
8249
 
7500
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8250
+ /**
8251
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8252
+ *
8253
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8254
+ *
8255
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8256
+ *
8257
+ */
7501
8258
  export type QueryRootArticlesArgs = {
7502
8259
  after?: InputMaybe<Scalars['String']['input']>;
7503
8260
  before?: InputMaybe<Scalars['String']['input']>;
@@ -7508,18 +8265,39 @@ export type QueryRootArticlesArgs = {
7508
8265
  sortKey?: InputMaybe<ArticleSortKeys>;
7509
8266
  };
7510
8267
 
7511
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8268
+ /**
8269
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8270
+ *
8271
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8272
+ *
8273
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8274
+ *
8275
+ */
7512
8276
  export type QueryRootBlogArgs = {
7513
8277
  handle?: InputMaybe<Scalars['String']['input']>;
7514
8278
  id?: InputMaybe<Scalars['ID']['input']>;
7515
8279
  };
7516
8280
 
7517
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8281
+ /**
8282
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8283
+ *
8284
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8285
+ *
8286
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8287
+ *
8288
+ */
7518
8289
  export type QueryRootBlogByHandleArgs = {
7519
8290
  handle: Scalars['String']['input'];
7520
8291
  };
7521
8292
 
7522
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8293
+ /**
8294
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8295
+ *
8296
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8297
+ *
8298
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8299
+ *
8300
+ */
7523
8301
  export type QueryRootBlogsArgs = {
7524
8302
  after?: InputMaybe<Scalars['String']['input']>;
7525
8303
  before?: InputMaybe<Scalars['String']['input']>;
@@ -7530,28 +8308,63 @@ export type QueryRootBlogsArgs = {
7530
8308
  sortKey?: InputMaybe<BlogSortKeys>;
7531
8309
  };
7532
8310
 
7533
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8311
+ /**
8312
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8313
+ *
8314
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8315
+ *
8316
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8317
+ *
8318
+ */
7534
8319
  export type QueryRootCartArgs = {
7535
8320
  id: Scalars['ID']['input'];
7536
8321
  };
7537
8322
 
7538
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8323
+ /**
8324
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8325
+ *
8326
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8327
+ *
8328
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8329
+ *
8330
+ */
7539
8331
  export type QueryRootCartCompletionAttemptArgs = {
7540
8332
  attemptId: Scalars['String']['input'];
7541
8333
  };
7542
8334
 
7543
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8335
+ /**
8336
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8337
+ *
8338
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8339
+ *
8340
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8341
+ *
8342
+ */
7544
8343
  export type QueryRootCollectionArgs = {
7545
8344
  handle?: InputMaybe<Scalars['String']['input']>;
7546
8345
  id?: InputMaybe<Scalars['ID']['input']>;
7547
8346
  };
7548
8347
 
7549
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8348
+ /**
8349
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8350
+ *
8351
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8352
+ *
8353
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8354
+ *
8355
+ */
7550
8356
  export type QueryRootCollectionByHandleArgs = {
7551
8357
  handle: Scalars['String']['input'];
7552
8358
  };
7553
8359
 
7554
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8360
+ /**
8361
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8362
+ *
8363
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8364
+ *
8365
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8366
+ *
8367
+ */
7555
8368
  export type QueryRootCollectionsArgs = {
7556
8369
  after?: InputMaybe<Scalars['String']['input']>;
7557
8370
  before?: InputMaybe<Scalars['String']['input']>;
@@ -7562,12 +8375,26 @@ export type QueryRootCollectionsArgs = {
7562
8375
  sortKey?: InputMaybe<CollectionSortKeys>;
7563
8376
  };
7564
8377
 
7565
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8378
+ /**
8379
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8380
+ *
8381
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8382
+ *
8383
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8384
+ *
8385
+ */
7566
8386
  export type QueryRootCustomerArgs = {
7567
8387
  customerAccessToken: Scalars['String']['input'];
7568
8388
  };
7569
8389
 
7570
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8390
+ /**
8391
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8392
+ *
8393
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8394
+ *
8395
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8396
+ *
8397
+ */
7571
8398
  export type QueryRootLocationsArgs = {
7572
8399
  after?: InputMaybe<Scalars['String']['input']>;
7573
8400
  before?: InputMaybe<Scalars['String']['input']>;
@@ -7578,18 +8405,39 @@ export type QueryRootLocationsArgs = {
7578
8405
  sortKey?: InputMaybe<LocationSortKeys>;
7579
8406
  };
7580
8407
 
7581
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8408
+ /**
8409
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8410
+ *
8411
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8412
+ *
8413
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8414
+ *
8415
+ */
7582
8416
  export type QueryRootMenuArgs = {
7583
8417
  handle: Scalars['String']['input'];
7584
8418
  };
7585
8419
 
7586
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8420
+ /**
8421
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8422
+ *
8423
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8424
+ *
8425
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8426
+ *
8427
+ */
7587
8428
  export type QueryRootMetaobjectArgs = {
7588
8429
  handle?: InputMaybe<MetaobjectHandleInput>;
7589
8430
  id?: InputMaybe<Scalars['ID']['input']>;
7590
8431
  };
7591
8432
 
7592
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8433
+ /**
8434
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8435
+ *
8436
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8437
+ *
8438
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8439
+ *
8440
+ */
7593
8441
  export type QueryRootMetaobjectsArgs = {
7594
8442
  after?: InputMaybe<Scalars['String']['input']>;
7595
8443
  before?: InputMaybe<Scalars['String']['input']>;
@@ -7600,28 +8448,63 @@ export type QueryRootMetaobjectsArgs = {
7600
8448
  type: Scalars['String']['input'];
7601
8449
  };
7602
8450
 
7603
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8451
+ /**
8452
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8453
+ *
8454
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8455
+ *
8456
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8457
+ *
8458
+ */
7604
8459
  export type QueryRootNodeArgs = {
7605
8460
  id: Scalars['ID']['input'];
7606
8461
  };
7607
8462
 
7608
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8463
+ /**
8464
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8465
+ *
8466
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8467
+ *
8468
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8469
+ *
8470
+ */
7609
8471
  export type QueryRootNodesArgs = {
7610
8472
  ids: Array<Scalars['ID']['input']>;
7611
8473
  };
7612
8474
 
7613
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8475
+ /**
8476
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8477
+ *
8478
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8479
+ *
8480
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8481
+ *
8482
+ */
7614
8483
  export type QueryRootPageArgs = {
7615
8484
  handle?: InputMaybe<Scalars['String']['input']>;
7616
8485
  id?: InputMaybe<Scalars['ID']['input']>;
7617
8486
  };
7618
8487
 
7619
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8488
+ /**
8489
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8490
+ *
8491
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8492
+ *
8493
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8494
+ *
8495
+ */
7620
8496
  export type QueryRootPageByHandleArgs = {
7621
8497
  handle: Scalars['String']['input'];
7622
8498
  };
7623
8499
 
7624
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8500
+ /**
8501
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8502
+ *
8503
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8504
+ *
8505
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8506
+ *
8507
+ */
7625
8508
  export type QueryRootPagesArgs = {
7626
8509
  after?: InputMaybe<Scalars['String']['input']>;
7627
8510
  before?: InputMaybe<Scalars['String']['input']>;
@@ -7632,7 +8515,14 @@ export type QueryRootPagesArgs = {
7632
8515
  sortKey?: InputMaybe<PageSortKeys>;
7633
8516
  };
7634
8517
 
7635
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8518
+ /**
8519
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8520
+ *
8521
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8522
+ *
8523
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8524
+ *
8525
+ */
7636
8526
  export type QueryRootPredictiveSearchArgs = {
7637
8527
  limit?: InputMaybe<Scalars['Int']['input']>;
7638
8528
  limitScope?: InputMaybe<PredictiveSearchLimitScope>;
@@ -7642,35 +8532,77 @@ export type QueryRootPredictiveSearchArgs = {
7642
8532
  unavailableProducts?: InputMaybe<SearchUnavailableProductsType>;
7643
8533
  };
7644
8534
 
7645
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8535
+ /**
8536
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8537
+ *
8538
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8539
+ *
8540
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8541
+ *
8542
+ */
7646
8543
  export type QueryRootProductArgs = {
7647
8544
  handle?: InputMaybe<Scalars['String']['input']>;
7648
8545
  id?: InputMaybe<Scalars['ID']['input']>;
7649
8546
  };
7650
8547
 
7651
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8548
+ /**
8549
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8550
+ *
8551
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8552
+ *
8553
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8554
+ *
8555
+ */
7652
8556
  export type QueryRootProductByHandleArgs = {
7653
8557
  handle: Scalars['String']['input'];
7654
8558
  };
7655
8559
 
7656
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8560
+ /**
8561
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8562
+ *
8563
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8564
+ *
8565
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8566
+ *
8567
+ */
7657
8568
  export type QueryRootProductRecommendationsArgs = {
7658
8569
  intent?: InputMaybe<ProductRecommendationIntent>;
7659
8570
  productHandle?: InputMaybe<Scalars['String']['input']>;
7660
8571
  productId?: InputMaybe<Scalars['ID']['input']>;
7661
8572
  };
7662
8573
 
7663
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8574
+ /**
8575
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8576
+ *
8577
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8578
+ *
8579
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8580
+ *
8581
+ */
7664
8582
  export type QueryRootProductTagsArgs = {
7665
8583
  first: Scalars['Int']['input'];
7666
8584
  };
7667
8585
 
7668
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8586
+ /**
8587
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8588
+ *
8589
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8590
+ *
8591
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8592
+ *
8593
+ */
7669
8594
  export type QueryRootProductTypesArgs = {
7670
8595
  first: Scalars['Int']['input'];
7671
8596
  };
7672
8597
 
7673
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8598
+ /**
8599
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8600
+ *
8601
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8602
+ *
8603
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8604
+ *
8605
+ */
7674
8606
  export type QueryRootProductsArgs = {
7675
8607
  after?: InputMaybe<Scalars['String']['input']>;
7676
8608
  before?: InputMaybe<Scalars['String']['input']>;
@@ -7681,7 +8613,14 @@ export type QueryRootProductsArgs = {
7681
8613
  sortKey?: InputMaybe<ProductSortKeys>;
7682
8614
  };
7683
8615
 
7684
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8616
+ /**
8617
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8618
+ *
8619
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8620
+ *
8621
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8622
+ *
8623
+ */
7685
8624
  export type QueryRootSearchArgs = {
7686
8625
  after?: InputMaybe<Scalars['String']['input']>;
7687
8626
  before?: InputMaybe<Scalars['String']['input']>;
@@ -7696,12 +8635,26 @@ export type QueryRootSearchArgs = {
7696
8635
  unavailableProducts?: InputMaybe<SearchUnavailableProductsType>;
7697
8636
  };
7698
8637
 
7699
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8638
+ /**
8639
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8640
+ *
8641
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8642
+ *
8643
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8644
+ *
8645
+ */
7700
8646
  export type QueryRootSitemapArgs = {
7701
8647
  type: SitemapType;
7702
8648
  };
7703
8649
 
7704
- /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
8650
+ /**
8651
+ * The entry point for all Storefront API queries. Provides access to shop resources including products, collections, carts, and customer data, as well as content like articles and pages. This query acts as the public, top-level type from which all queries must start.
8652
+ *
8653
+ * Use individual queries like [`product`](https://shopify.dev/docs/api/storefront/current/queries/product) or [`collection`](https://shopify.dev/docs/api/storefront/current/queries/collection) to fetch specific resources by ID or handle. Use plural queries like [`products`](https://shopify.dev/docs/api/storefront/current/queries/products) or [`collections`](https://shopify.dev/docs/api/storefront/current/queries/collections) to retrieve paginated lists with optional filtering and sorting. The [`search`](https://shopify.dev/docs/api/storefront/current/queries/search) and [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries enable storefront search functionality.
8654
+ *
8655
+ * Explore queries interactively with the [GraphiQL explorer and sample query kit](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/api-exploration).
8656
+ *
8657
+ */
7705
8658
  export type QueryRootUrlRedirectsArgs = {
7706
8659
  after?: InputMaybe<Scalars['String']['input']>;
7707
8660
  before?: InputMaybe<Scalars['String']['input']>;
@@ -7711,7 +8664,10 @@ export type QueryRootUrlRedirectsArgs = {
7711
8664
  reverse?: InputMaybe<Scalars['Boolean']['input']>;
7712
8665
  };
7713
8666
 
7714
- /** SEO information. */
8667
+ /**
8668
+ * Search engine optimization metadata for a resource. The title and description appear in search engine results and browser tabs.
8669
+ *
8670
+ */
7715
8671
  export type Seo = {
7716
8672
  __typename?: 'SEO';
7717
8673
  /** The meta description. */
@@ -7721,8 +8677,7 @@ export type Seo = {
7721
8677
  };
7722
8678
 
7723
8679
  /**
7724
- * Script discount applications capture the intentions of a discount that
7725
- * was created by a Shopify Script.
8680
+ * A discount application created by a Shopify Script. Implements the [`DiscountApplication`](https://shopify.dev/docs/api/storefront/current/interfaces/DiscountApplication) interface and captures the discount's value, allocation method, and targeting rules at the time the script applied it.
7726
8681
  *
7727
8682
  */
7728
8683
  export type ScriptDiscountApplication = DiscountApplication & {
@@ -7746,7 +8701,12 @@ export type SearchPrefixQueryType =
7746
8701
  /** Don't perform a partial word match on the last search term. */
7747
8702
  | 'NONE';
7748
8703
 
7749
- /** A search query suggestion. */
8704
+ /**
8705
+ * A suggested search term returned by the [`predictiveSearch`](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) query. Query suggestions help customers refine their searches by showing relevant terms as they type.
8706
+ *
8707
+ * The [`text`](https://shopify.dev/docs/api/storefront/current/objects/SearchQuerySuggestion#field-SearchQuerySuggestion.fields.text) field provides the plain suggestion, while [`styledText`](https://shopify.dev/docs/api/storefront/current/objects/SearchQuerySuggestion#field-SearchQuerySuggestion.fields.styledText) includes HTML tags to highlight matching portions. Implements [`Trackable`](https://shopify.dev/docs/api/storefront/current/interfaces/Trackable) for analytics reporting on search traffic origins.
8708
+ *
8709
+ */
7750
8710
  export type SearchQuerySuggestion = Trackable & {
7751
8711
  __typename?: 'SearchQuerySuggestion';
7752
8712
  /** The text of the search query suggestion with highlighted HTML tags. */
@@ -7840,8 +8800,7 @@ export type SearchableField =
7840
8800
  | 'VENDOR';
7841
8801
 
7842
8802
  /**
7843
- * Properties used by customers to select a product variant.
7844
- * Products can have multiple options, like different sizes or colors.
8803
+ * A name/value pair representing a product option selection on a variant. The [`ProductVariant`](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant) object's [`selectedOptions`](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant#field-ProductVariant.fields.selectedOptions) field returns this to indicate which options define that variant, such as "Size: Large" or "Color: Red".
7845
8804
  *
7846
8805
  */
7847
8806
  export type SelectedOption = {
@@ -7860,7 +8819,10 @@ export type SelectedOptionInput = {
7860
8819
  value: Scalars['String']['input'];
7861
8820
  };
7862
8821
 
7863
- /** Represents how products and variants can be sold and purchased. */
8822
+ /**
8823
+ * Represents deferred or recurring purchase options for [products](https://shopify.dev/docs/api/storefront/current/objects/Product) and [product variants](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant), such as subscriptions, pre-orders, or try-before-you-buy. Each selling plan belongs to a [`SellingPlanGroup`](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanGroup) and defines billing, pricing, inventory, and delivery policies.
8824
+ *
8825
+ */
7864
8826
  export type SellingPlan = HasMetafields & {
7865
8827
  __typename?: 'SellingPlan';
7866
8828
  /** The billing policy for the selling plan. */
@@ -7887,18 +8849,29 @@ export type SellingPlan = HasMetafields & {
7887
8849
  recurringDeliveries: Scalars['Boolean']['output'];
7888
8850
  };
7889
8851
 
7890
- /** Represents how products and variants can be sold and purchased. */
8852
+ /**
8853
+ * Represents deferred or recurring purchase options for [products](https://shopify.dev/docs/api/storefront/current/objects/Product) and [product variants](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant), such as subscriptions, pre-orders, or try-before-you-buy. Each selling plan belongs to a [`SellingPlanGroup`](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanGroup) and defines billing, pricing, inventory, and delivery policies.
8854
+ *
8855
+ */
7891
8856
  export type SellingPlanMetafieldArgs = {
7892
8857
  key: Scalars['String']['input'];
7893
8858
  namespace?: InputMaybe<Scalars['String']['input']>;
7894
8859
  };
7895
8860
 
7896
- /** Represents how products and variants can be sold and purchased. */
8861
+ /**
8862
+ * Represents deferred or recurring purchase options for [products](https://shopify.dev/docs/api/storefront/current/objects/Product) and [product variants](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant), such as subscriptions, pre-orders, or try-before-you-buy. Each selling plan belongs to a [`SellingPlanGroup`](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanGroup) and defines billing, pricing, inventory, and delivery policies.
8863
+ *
8864
+ */
7897
8865
  export type SellingPlanMetafieldsArgs = {
7898
8866
  identifiers: Array<HasMetafieldsIdentifier>;
7899
8867
  };
7900
8868
 
7901
- /** Represents an association between a variant and a selling plan. Selling plan allocations describe the options offered for each variant, and the price of the variant when purchased with a selling plan. */
8869
+ /**
8870
+ * Links a [`ProductVariant`](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant) to a [`SellingPlan`](https://shopify.dev/docs/api/storefront/current/objects/SellingPlan), providing the pricing details for that specific combination. Each allocation includes the checkout charge amount, any remaining balance due for the purchase, and up to two price adjustments that show how the selling plan affects the variant's price.
8871
+ *
8872
+ * Selling plan allocations are available on product variants and [cart lines](https://shopify.dev/docs/api/storefront/current/objects/CartLine), enabling storefronts to display information such as subscription or purchase option pricing before and during checkout.
8873
+ *
8874
+ */
7902
8875
  export type SellingPlanAllocation = {
7903
8876
  __typename?: 'SellingPlanAllocation';
7904
8877
  /** The checkout charge amount due for the purchase. */
@@ -8024,7 +8997,12 @@ export type SellingPlanFixedPriceAdjustment = {
8024
8997
  price: MoneyV2;
8025
8998
  };
8026
8999
 
8027
- /** Represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans. */
9000
+ /**
9001
+ * 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`](https://shopify.dev/docs/api/storefront/current/objects/SellingPlan) objects that share the same selling method and options.
9002
+ *
9003
+ * The `SellingPlanGroup` acts as a container for one or more individual `SellingPlan` objects, enabling merchants to offer multiple options (like weekly or monthly deliveries) under one, unified category on a product page.
9004
+ *
9005
+ */
8028
9006
  export type SellingPlanGroup = {
8029
9007
  __typename?: 'SellingPlanGroup';
8030
9008
  /** A display friendly name for the app that created the selling plan group. */
@@ -8037,7 +9015,12 @@ export type SellingPlanGroup = {
8037
9015
  sellingPlans: SellingPlanConnection;
8038
9016
  };
8039
9017
 
8040
- /** Represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans. */
9018
+ /**
9019
+ * 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`](https://shopify.dev/docs/api/storefront/current/objects/SellingPlan) objects that share the same selling method and options.
9020
+ *
9021
+ * The `SellingPlanGroup` acts as a container for one or more individual `SellingPlan` objects, enabling merchants to offer multiple options (like weekly or monthly deliveries) under one, unified category on a product page.
9022
+ *
9023
+ */
8041
9024
  export type SellingPlanGroupSellingPlansArgs = {
8042
9025
  after?: InputMaybe<Scalars['String']['input']>;
8043
9026
  before?: InputMaybe<Scalars['String']['input']>;
@@ -8145,12 +9128,19 @@ export type SellingPlanRecurringDeliveryPolicy = {
8145
9128
  intervalCount: Scalars['Int']['output'];
8146
9129
  };
8147
9130
 
8148
- /** Shop represents a collection of the general settings and information about the shop. */
9131
+ /**
9132
+ * The central hub for store-wide settings and information accessible through the Storefront API. Provides the shop's name, description, and branding configuration including logos and colors through the [`Brand`](https://shopify.dev/docs/api/storefront/current/objects/Brand) object.
9133
+ *
9134
+ * Access store policies such as privacy, refund, shipping, and terms of service via [`ShopPolicy`](https://shopify.dev/docs/api/storefront/current/objects/ShopPolicy), and the subscription policy via [`ShopPolicyWithDefault`](https://shopify.dev/docs/api/storefront/current/objects/ShopPolicyWithDefault). [`PaymentSettings`](https://shopify.dev/docs/api/storefront/current/objects/PaymentSettings) expose accepted card brands, supported digital wallets, and enabled presentment currencies. The object also includes the primary [`Domain`](https://shopify.dev/docs/api/storefront/current/objects/Domain), countries the shop ships to, [`ShopPayInstallmentsPricing`](https://shopify.dev/docs/api/storefront/current/objects/ShopPayInstallmentsPricing), and [`SocialLoginProvider`](https://shopify.dev/docs/api/storefront/current/objects/SocialLoginProvider) options for customer accounts.
9135
+ *
9136
+ */
8149
9137
  export type Shop = HasMetafields &
8150
9138
  Node & {
8151
9139
  __typename?: 'Shop';
8152
9140
  /** The shop's branding configuration. */
8153
9141
  brand?: Maybe<Brand>;
9142
+ /** The shop's contact information. */
9143
+ contactInformation?: Maybe<ShopPolicy>;
8154
9144
  /** Translations for customer accounts. */
8155
9145
  customerAccountTranslations?: Maybe<Array<Translation>>;
8156
9146
  /** The URL for the customer account (only present if shop has a customer account vanity domain). */
@@ -8159,6 +9149,8 @@ export type Shop = HasMetafields &
8159
9149
  description?: Maybe<Scalars['String']['output']>;
8160
9150
  /** A globally-unique ID. */
8161
9151
  id: Scalars['ID']['output'];
9152
+ /** The shop's legal notice. */
9153
+ legalNotice?: Maybe<ShopPolicy>;
8162
9154
  /** A [custom field](https://shopify.dev/docs/apps/build/custom-data), including its `namespace` and `key`, that's associated with a Shopify resource for the purposes of adding and storing additional information. */
8163
9155
  metafield?: Maybe<Metafield>;
8164
9156
  /** A list of [custom fields](/docs/apps/build/custom-data) that a merchant associates with a Shopify resource. */
@@ -8185,17 +9177,29 @@ export type Shop = HasMetafields &
8185
9177
  socialLoginProviders: Array<SocialLoginProvider>;
8186
9178
  /** The shop’s subscription policy. */
8187
9179
  subscriptionPolicy?: Maybe<ShopPolicyWithDefault>;
9180
+ /** The shop's terms of sale. */
9181
+ termsOfSale?: Maybe<ShopPolicy>;
8188
9182
  /** The shop’s terms of service. */
8189
9183
  termsOfService?: Maybe<ShopPolicy>;
8190
9184
  };
8191
9185
 
8192
- /** Shop represents a collection of the general settings and information about the shop. */
9186
+ /**
9187
+ * The central hub for store-wide settings and information accessible through the Storefront API. Provides the shop's name, description, and branding configuration including logos and colors through the [`Brand`](https://shopify.dev/docs/api/storefront/current/objects/Brand) object.
9188
+ *
9189
+ * Access store policies such as privacy, refund, shipping, and terms of service via [`ShopPolicy`](https://shopify.dev/docs/api/storefront/current/objects/ShopPolicy), and the subscription policy via [`ShopPolicyWithDefault`](https://shopify.dev/docs/api/storefront/current/objects/ShopPolicyWithDefault). [`PaymentSettings`](https://shopify.dev/docs/api/storefront/current/objects/PaymentSettings) expose accepted card brands, supported digital wallets, and enabled presentment currencies. The object also includes the primary [`Domain`](https://shopify.dev/docs/api/storefront/current/objects/Domain), countries the shop ships to, [`ShopPayInstallmentsPricing`](https://shopify.dev/docs/api/storefront/current/objects/ShopPayInstallmentsPricing), and [`SocialLoginProvider`](https://shopify.dev/docs/api/storefront/current/objects/SocialLoginProvider) options for customer accounts.
9190
+ *
9191
+ */
8193
9192
  export type ShopMetafieldArgs = {
8194
9193
  key: Scalars['String']['input'];
8195
9194
  namespace?: InputMaybe<Scalars['String']['input']>;
8196
9195
  };
8197
9196
 
8198
- /** Shop represents a collection of the general settings and information about the shop. */
9197
+ /**
9198
+ * The central hub for store-wide settings and information accessible through the Storefront API. Provides the shop's name, description, and branding configuration including logos and colors through the [`Brand`](https://shopify.dev/docs/api/storefront/current/objects/Brand) object.
9199
+ *
9200
+ * Access store policies such as privacy, refund, shipping, and terms of service via [`ShopPolicy`](https://shopify.dev/docs/api/storefront/current/objects/ShopPolicy), and the subscription policy via [`ShopPolicyWithDefault`](https://shopify.dev/docs/api/storefront/current/objects/ShopPolicyWithDefault). [`PaymentSettings`](https://shopify.dev/docs/api/storefront/current/objects/PaymentSettings) expose accepted card brands, supported digital wallets, and enabled presentment currencies. The object also includes the primary [`Domain`](https://shopify.dev/docs/api/storefront/current/objects/Domain), countries the shop ships to, [`ShopPayInstallmentsPricing`](https://shopify.dev/docs/api/storefront/current/objects/ShopPayInstallmentsPricing), and [`SocialLoginProvider`](https://shopify.dev/docs/api/storefront/current/objects/SocialLoginProvider) options for customer accounts.
9201
+ *
9202
+ */
8199
9203
  export type ShopMetafieldsArgs = {
8200
9204
  identifiers: Array<HasMetafieldsIdentifier>;
8201
9205
  };
@@ -8752,8 +9756,11 @@ export type SocialLoginProvider = {
8752
9756
  };
8753
9757
 
8754
9758
  /**
8755
- * The availability of a product variant at a particular location.
8756
- * Local pick-up must be enabled in the store's shipping settings, otherwise this will return an empty result.
9759
+ * Inventory information for a product variant at a physical store location that offers local pickup. Includes stock availability, quantity on hand, and estimated pickup readiness time.
9760
+ *
9761
+ * Local pickup must be [enabled in the store's shipping settings](https://help.shopify.com/manual/shipping/setting-up-and-managing-your-shipping/local-methods/local-pickup) for this data to be returned. Results can be sorted by proximity to a customer's location using the `near` argument on the [`ProductVariant.storeAvailability`](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant#field-ProductVariant.fields.storeAvailability) connection.
9762
+ *
9763
+ * Learn more about [supporting local pickup on storefronts](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections/local-pickup).
8757
9764
  *
8758
9765
  */
8759
9766
  export type StoreAvailability = {
@@ -8966,7 +9973,10 @@ export type SubmitThrottled = {
8966
9973
  pollAfter: Scalars['DateTime']['output'];
8967
9974
  };
8968
9975
 
8969
- /** Color and image for visual representation. */
9976
+ /**
9977
+ * A visual representation for filter values, containing a color, an image, or both. The [`FilterValue`](https://shopify.dev/docs/api/storefront/current/objects/FilterValue) object's [`swatch`](https://shopify.dev/docs/api/storefront/current/objects/FilterValue#field-FilterValue.fields.swatch) field returns this when the filter's presentation is set to `SWATCH`.
9978
+ *
9979
+ */
8970
9980
  export type Swatch = {
8971
9981
  __typename?: 'Swatch';
8972
9982
  /** The swatch color. */
@@ -8976,7 +9986,11 @@ export type Swatch = {
8976
9986
  };
8977
9987
 
8978
9988
  /**
8979
- * The taxonomy category for the product.
9989
+ * A category from Shopify's [Standard Product Taxonomy](https://shopify.github.io/product-taxonomy/releases/unstable/?categoryId=sg-4-17-2-17) assigned to a [`Product`](https://shopify.dev/docs/api/storefront/current/objects/Product). Categories provide hierarchical classification through the `ancestors` field.
9990
+ *
9991
+ * The [`ancestors`](https://shopify.dev/docs/api/storefront/current/objects/TaxonomyCategory#field-TaxonomyCategory.fields.ancestors) field returns the parent chain from the immediate parent up to the root. Each ancestor category also includes its own `ancestors`.
9992
+ *
9993
+ * The [`name`](https://shopify.dev/docs/api/storefront/latest/objects/TaxonomyCategory#field-TaxonomyCategory.fields.name) field returns the localized category name based on the storefront's request language with shop locale fallbacks. If a translation isn't available for the resolved locale, the English taxonomy name is returned.
8980
9994
  *
8981
9995
  */
8982
9996
  export type TaxonomyCategory = Node & {
@@ -9018,7 +10032,9 @@ export type Translation = {
9018
10032
  };
9019
10033
 
9020
10034
  /**
9021
- * The measurement used to calculate a unit price for a product variant (e.g. $9.99 / 100ml).
10035
+ * The measurement data used to calculate unit prices for a [`ProductVariant`](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant). Unit pricing helps customers compare costs across different package sizes by showing a standardized price, such as "$9.99 / 100ml".
10036
+ *
10037
+ * The object includes the quantity being sold (value and unit) and the reference measurement used for price comparison. Use this alongside the variant's [`unitPrice`](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant#field-ProductVariant.fields.unitPrice) field to display complete unit pricing information.
9022
10038
  *
9023
10039
  */
9024
10040
  export type UnitPriceMeasurement = {
@@ -9181,7 +10197,12 @@ export type VariantOptionFilter = {
9181
10197
  value: Scalars['String']['input'];
9182
10198
  };
9183
10199
 
9184
- /** Represents a Shopify hosted video. */
10200
+ /**
10201
+ * A video hosted on Shopify's servers. Implements the [`Media`](https://shopify.dev/docs/api/storefront/current/interfaces/Media) interface and provides multiple video sources through the [`sources`](https://shopify.dev/docs/api/storefront/current/objects/Video#field-Video.fields.sources) field, each with [format](https://shopify.dev/docs/api/storefront/current/objects/Video#field-Video.fields.sources.format), dimensions, and [URL information](https://shopify.dev/docs/api/storefront/current/objects/Video#field-Video.fields.sources.url) for adaptive playback.
10202
+ *
10203
+ * For videos hosted on external platforms like YouTube or Vimeo, use [`ExternalVideo`](https://shopify.dev/docs/api/storefront/current/objects/ExternalVideo) instead.
10204
+ *
10205
+ */
9185
10206
  export type Video = Media &
9186
10207
  Node & {
9187
10208
  __typename?: 'Video';
@@ -9226,7 +10247,10 @@ export type VisitorConsent = {
9226
10247
  saleOfData?: InputMaybe<Scalars['Boolean']['input']>;
9227
10248
  };
9228
10249
 
9229
- /** Units of measurement for weight. */
10250
+ /**
10251
+ * Units of measurement for weight, supporting both metric and imperial systems. Used by [`ProductVariant`](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant) to specify the unit for the variant's weight value.
10252
+ *
10253
+ */
9230
10254
  export type WeightUnit =
9231
10255
  /** Metric system unit of mass. */
9232
10256
  | 'GRAMS'