@reactionary/source 0.3.0 → 0.3.1

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 (94) hide show
  1. package/core/src/client/client-builder.ts +3 -7
  2. package/core/src/client/client.ts +2 -3
  3. package/core/src/decorators/reactionary.decorator.ts +2 -2
  4. package/core/src/initialization.ts +8 -3
  5. package/core/src/providers/analytics.provider.ts +75 -0
  6. package/core/src/providers/cart.provider.ts +3 -0
  7. package/core/src/providers/category.provider.ts +1 -0
  8. package/core/src/schemas/errors/invalid-input.error.ts +1 -1
  9. package/core/src/schemas/errors/invalid-output.error.ts +1 -1
  10. package/core/src/schemas/models/identifiers.model.ts +3 -0
  11. package/core/src/schemas/models/order.model.ts +2 -2
  12. package/core/src/schemas/mutations/analytics/index.ts +23 -0
  13. package/core/src/schemas/mutations/analytics/product-add-to-cart.mutation.ts +25 -0
  14. package/core/src/schemas/mutations/analytics/product-details-view.mutation.ts +14 -0
  15. package/core/src/schemas/mutations/analytics/product-summary-click.mutation.ts +26 -0
  16. package/core/src/schemas/mutations/analytics/product-summary-view.mutation.ts +25 -0
  17. package/core/src/schemas/mutations/analytics/purchase.mutation.ts +14 -0
  18. package/core/src/schemas/mutations/index.ts +1 -1
  19. package/core/src/schemas/queries/order-search.query.ts +3 -0
  20. package/core/src/schemas/session.schema.ts +20 -9
  21. package/core/src/test/client-builder.spec.ts +60 -0
  22. package/core/src/zod-utils.ts +3 -1
  23. package/documentation/{1-purpose.md → docs/1-purpose.md} +4 -0
  24. package/documentation/docs/8-tracking.md +9 -0
  25. package/documentation/docs/providers/analytics.provider.md +297 -0
  26. package/documentation/docs/providers/base.provider.md +118 -0
  27. package/documentation/docs/providers/cart.provider.md +305 -0
  28. package/documentation/docs/providers/category.provider.md +244 -0
  29. package/documentation/docs/providers/checkout.provider.md +315 -0
  30. package/documentation/docs/providers/identity.provider.md +194 -0
  31. package/documentation/docs/providers/inventory.provider.md +162 -0
  32. package/documentation/docs/providers/order-search.provider.md +155 -0
  33. package/documentation/docs/providers/order.provider.md +160 -0
  34. package/documentation/docs/providers/price.provider.md +197 -0
  35. package/documentation/docs/providers/product-search.provider.md +265 -0
  36. package/documentation/docs/providers/product.provider.md +204 -0
  37. package/documentation/docs/providers/profile.provider.md +283 -0
  38. package/documentation/docs/providers/store.provider.md +146 -0
  39. package/documentation/docs/schemas/schemas.md +1862 -0
  40. package/documentation/docusaurus.config.js +33 -0
  41. package/documentation/scripts/generate.ts +52 -0
  42. package/documentation/sidebars.js +8 -0
  43. package/documentation/src/css/custom.css +3 -0
  44. package/documentation/src/pages/index.js +12 -0
  45. package/eslint.config.mjs +1 -1
  46. package/examples/node/package.json +6 -6
  47. package/examples/node/src/basic/basic-node-provider-model-extension.spec.ts +0 -2
  48. package/package.json +19 -5
  49. package/providers/algolia/project.json +1 -1
  50. package/providers/algolia/src/core/initialize.ts +5 -0
  51. package/providers/algolia/src/providers/analytics.provider.ts +112 -0
  52. package/providers/algolia/src/providers/index.ts +1 -0
  53. package/providers/commercetools/project.json +1 -1
  54. package/providers/commercetools/src/providers/profile.provider.ts +1 -4
  55. package/providers/fake/project.json +1 -1
  56. package/providers/fake/src/providers/analytics.provider.ts +5 -0
  57. package/providers/fake/src/providers/checkout.provider.ts +5 -2
  58. package/providers/fake/src/providers/product.provider.ts +18 -8
  59. package/providers/fake/src/test/cart.provider.spec.ts +0 -2
  60. package/providers/fake/src/test/category.provider.spec.ts +3 -3
  61. package/providers/fake/src/test/checkout.provider.spec.ts +3 -7
  62. package/providers/google-analytics/README.md +11 -0
  63. package/providers/google-analytics/eslint.config.mjs +25 -0
  64. package/providers/google-analytics/package.json +18 -0
  65. package/providers/google-analytics/project.json +33 -0
  66. package/providers/google-analytics/src/core/initialize.ts +16 -0
  67. package/providers/google-analytics/src/index.ts +4 -0
  68. package/providers/google-analytics/src/providers/analytics.provider.ts +162 -0
  69. package/providers/google-analytics/src/schema/capabilities.schema.ts +10 -0
  70. package/providers/google-analytics/src/schema/configuration.schema.ts +9 -0
  71. package/providers/google-analytics/src/test/analytics.provider.spec.ts +93 -0
  72. package/providers/google-analytics/tsconfig.json +24 -0
  73. package/providers/google-analytics/tsconfig.lib.json +23 -0
  74. package/providers/google-analytics/tsconfig.spec.json +28 -0
  75. package/providers/google-analytics/vite.config.ts +26 -0
  76. package/providers/google-analytics/vitest.config.mts +21 -0
  77. package/providers/medusa/package.json +3 -10
  78. package/providers/medusa/project.json +1 -1
  79. package/providers/medusa/src/providers/profile.provider.ts +5 -15
  80. package/providers/medusa/src/test/test-utils.ts +0 -1
  81. package/providers/medusa/tsconfig.json +3 -0
  82. package/providers/medusa/tsconfig.lib.json +16 -1
  83. package/providers/meilisearch/project.json +1 -1
  84. package/providers/posthog/project.json +1 -1
  85. package/tsconfig.base.json +4 -1
  86. package/.claude/settings.local.json +0 -28
  87. package/core/src/schemas/mutations/analytics.mutation.ts +0 -23
  88. package/providers/algolia/src/test/test-utils.ts +0 -31
  89. /package/documentation/{2-getting-started.md → docs/2-getting-started.md} +0 -0
  90. /package/documentation/{3-querying-and-changing-data.md → docs/3-querying-and-changing-data.md} +0 -0
  91. /package/documentation/{4-product-data.md → docs/4-product-data.md} +0 -0
  92. /package/documentation/{5-cart-and-checkout.md → docs/5-cart-and-checkout.md} +0 -0
  93. /package/documentation/{6-product-search.md → docs/6-product-search.md} +0 -0
  94. /package/documentation/{7-marketing.md → docs/7-marketing.md} +0 -0
@@ -0,0 +1,1862 @@
1
+ # Schemas Schemas
2
+
3
+ ## AddressIdentifier
4
+
5
+ _Object containing the following properties:_
6
+
7
+ | Property | Type |
8
+ | :------------------ | :------- |
9
+ | **`nickName`** (\*) | `string` |
10
+
11
+ _(\*) Required._
12
+
13
+ ## Address
14
+
15
+ _Object containing the following properties:_
16
+
17
+ | Property | Type |
18
+ | :----------------------- | :-------------------------------------- |
19
+ | `identifier` | [AddressIdentifier](#addressidentifier) |
20
+ | **`firstName`** (\*) | `string` |
21
+ | **`lastName`** (\*) | `string` |
22
+ | **`streetAddress`** (\*) | `string` |
23
+ | **`streetNumber`** (\*) | `string` |
24
+ | **`city`** (\*) | `string` |
25
+ | **`region`** (\*) | `string` |
26
+ | **`postalCode`** (\*) | `string` |
27
+ | **`countryCode`** (\*) | `string` |
28
+
29
+ _(\*) Required._
30
+
31
+ ## AnalyticsEvent
32
+
33
+ _Object containing the following properties:_
34
+
35
+ | Property | Type |
36
+ | :------- | :--- |
37
+
38
+ _All properties are optional._
39
+
40
+ ## AnalyticsMutationPageViewEvent
41
+
42
+ _Object containing the following properties:_
43
+
44
+ | Property | Type |
45
+ | :--------------- | :------------ |
46
+ | **`event`** (\*) | `'page-view'` |
47
+ | **`url`** (\*) | `string` |
48
+
49
+ _(\*) Required._
50
+
51
+ ## AnalyticsMutation
52
+
53
+ _Union of the following possible types:_
54
+
55
+ - [AnalyticsMutationPageViewEvent](#analyticsmutationpageviewevent)
56
+ - [AnalyticsMutationSearchEvent](#analyticsmutationsearchevent)
57
+ - [AnalyticsMutationSearchProductClickEvent](#analyticsmutationsearchproductclickevent)
58
+
59
+ ## AnalyticsMutationSearchEvent
60
+
61
+ _Object containing the following properties:_
62
+
63
+ | Property | Type |
64
+ | :------------------ | :------------------------------------------------------- |
65
+ | **`event`** (\*) | `'product-search'` |
66
+ | **`search`** (\*) | [ProductSearchIdentifier](#productsearchidentifier) |
67
+ | **`products`** (\*) | _Array of [ProductIdentifier](#productidentifier) items_ |
68
+
69
+ _(\*) Required._
70
+
71
+ ## AnalyticsMutationSearchProductClickEvent
72
+
73
+ _Object containing the following properties:_
74
+
75
+ | Property | Type |
76
+ | :------------------ | :-------------------------------------------------- |
77
+ | **`event`** (\*) | `'product-search-click'` |
78
+ | **`search`** (\*) | [ProductSearchIdentifier](#productsearchidentifier) |
79
+ | **`product`** (\*) | [ProductIdentifier](#productidentifier) |
80
+ | **`position`** (\*) | `number` (_≥0_) |
81
+
82
+ _(\*) Required._
83
+
84
+ ## AnonymousIdentity
85
+
86
+ _Object containing the following properties:_
87
+
88
+ | Property | Type |
89
+ | :-------------- | :------------ |
90
+ | **`type`** (\*) | `'Anonymous'` |
91
+
92
+ _(\*) Required._
93
+
94
+ ## BaseModel
95
+
96
+ _Object containing the following properties:_
97
+
98
+ | Property | Type |
99
+ | :------- | :--- |
100
+
101
+ _All properties are optional._
102
+
103
+ ## BaseMutation
104
+
105
+ _Object containing the following properties:_
106
+
107
+ | Property | Type |
108
+ | :------- | :--- |
109
+
110
+ _All properties are optional._
111
+
112
+ ## BaseQuery
113
+
114
+ _Object containing the following properties:_
115
+
116
+ | Property | Type |
117
+ | :------- | :--- |
118
+
119
+ _All properties are optional._
120
+
121
+ ## Capabilities
122
+
123
+ _Object containing the following properties:_
124
+
125
+ | Property | Type |
126
+ | :----------------------- | :-------- |
127
+ | **`product`** (\*) | `boolean` |
128
+ | **`productSearch`** (\*) | `boolean` |
129
+ | **`analytics`** (\*) | `boolean` |
130
+ | **`identity`** (\*) | `boolean` |
131
+ | **`cart`** (\*) | `boolean` |
132
+ | **`checkout`** (\*) | `boolean` |
133
+ | **`order`** (\*) | `boolean` |
134
+ | **`orderSearch`** (\*) | `boolean` |
135
+ | **`inventory`** (\*) | `boolean` |
136
+ | **`price`** (\*) | `boolean` |
137
+ | **`category`** (\*) | `boolean` |
138
+ | **`store`** (\*) | `boolean` |
139
+ | **`profile`** (\*) | `boolean` |
140
+
141
+ _(\*) Required._
142
+
143
+ ## CartIdentifier
144
+
145
+ _Object containing the following properties:_
146
+
147
+ | Property | Type |
148
+ | :------------- | :------- |
149
+ | **`key`** (\*) | `string` |
150
+
151
+ _(\*) Required._
152
+
153
+ ## CartItemIdentifier
154
+
155
+ _Object containing the following properties:_
156
+
157
+ | Property | Type |
158
+ | :------------- | :------- |
159
+ | **`key`** (\*) | `string` |
160
+
161
+ _(\*) Required._
162
+
163
+ ## CartItem
164
+
165
+ _Object containing the following properties:_
166
+
167
+ | Property | Type | Default |
168
+ | :----------- | :---------------------------------------------------- | :------ |
169
+ | `identifier` | [CartItemIdentifier](#cartitemidentifier) | |
170
+ | `product` | [ProductIdentifier](#productidentifier) | |
171
+ | `variant` | [ProductVariantIdentifier](#productvariantidentifier) | |
172
+ | `quantity` | `number` | `0` |
173
+ | `price` | [ItemCostBreakdown](#itemcostbreakdown) | |
174
+
175
+ _All properties are optional._
176
+
177
+ ## CartMutationAddPaymentMethod
178
+
179
+ _Object containing the following properties:_
180
+
181
+ | Property | Description | Type |
182
+ | :------------------------- | :-------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------- |
183
+ | **`cart`** (\*) | | [CartIdentifier](#cartidentifier) |
184
+ | **`paymentMethodId`** (\*) | | [PaymentMethodIdentifier](#paymentmethodidentifier) |
185
+ | `amount` | The amount to authorize for the payment method. If not provided, the full remaining balance of the cart will be authorized. | [MonetaryAmount](#monetaryamount) |
186
+
187
+ _(\*) Required._
188
+
189
+ ## CartMutationApplyCoupon
190
+
191
+ _Object containing the following properties:_
192
+
193
+ | Property | Type |
194
+ | :-------------------- | :-------------------------------- |
195
+ | **`cart`** (\*) | [CartIdentifier](#cartidentifier) |
196
+ | **`couponCode`** (\*) | `string` |
197
+
198
+ _(\*) Required._
199
+
200
+ ## CartMutationChangeCurrency
201
+
202
+ _Object containing the following properties:_
203
+
204
+ | Property | Description | Type |
205
+ | :--------------------- | :------------------------------------ | :------------------------------------------------------------------ |
206
+ | **`cart`** (\*) | | _Object with properties:_<ul><li>**`key`** (\*): `string`</li></ul> |
207
+ | **`newCurrency`** (\*) | The new currency to set for the cart. | [Currency](#currency) |
208
+
209
+ _(\*) Required._
210
+
211
+ ## CartMutationCheckout
212
+
213
+ _Object containing the following properties:_
214
+
215
+ | Property | Type |
216
+ | :-------------- | :-------------------------------- |
217
+ | **`cart`** (\*) | [CartIdentifier](#cartidentifier) |
218
+
219
+ _(\*) Required._
220
+
221
+ ## CartMutationDeleteCart
222
+
223
+ _Object containing the following properties:_
224
+
225
+ | Property | Type |
226
+ | :-------------- | :-------------------------------- |
227
+ | **`cart`** (\*) | [CartIdentifier](#cartidentifier) |
228
+
229
+ _(\*) Required._
230
+
231
+ ## CartMutationItemAdd
232
+
233
+ _Object containing the following properties:_
234
+
235
+ | Property | Type |
236
+ | :------------------ | :---------------------------------------------------- |
237
+ | `cart` | [CartIdentifier](#cartidentifier) |
238
+ | **`variant`** (\*) | [ProductVariantIdentifier](#productvariantidentifier) |
239
+ | **`quantity`** (\*) | `number` |
240
+
241
+ _(\*) Required._
242
+
243
+ ## CartMutationItemQuantityChange
244
+
245
+ _Object containing the following properties:_
246
+
247
+ | Property | Type |
248
+ | :------------------ | :---------------------------------------- |
249
+ | **`cart`** (\*) | [CartIdentifier](#cartidentifier) |
250
+ | **`item`** (\*) | [CartItemIdentifier](#cartitemidentifier) |
251
+ | **`quantity`** (\*) | `number` |
252
+
253
+ _(\*) Required._
254
+
255
+ ## CartMutationItemRemove
256
+
257
+ _Object containing the following properties:_
258
+
259
+ | Property | Type |
260
+ | :-------------- | :---------------------------------------- |
261
+ | **`cart`** (\*) | [CartIdentifier](#cartidentifier) |
262
+ | **`item`** (\*) | [CartItemIdentifier](#cartitemidentifier) |
263
+
264
+ _(\*) Required._
265
+
266
+ ## CartMutationRemoveCoupon
267
+
268
+ _Object containing the following properties:_
269
+
270
+ | Property | Type |
271
+ | :-------------------- | :-------------------------------- |
272
+ | **`cart`** (\*) | [CartIdentifier](#cartidentifier) |
273
+ | **`couponCode`** (\*) | `string` |
274
+
275
+ _(\*) Required._
276
+
277
+ ## CartMutationRemovePaymentMethod
278
+
279
+ _Object containing the following properties:_
280
+
281
+ | Property | Type |
282
+ | :-------------- | :-------------------------------- |
283
+ | **`cart`** (\*) | [CartIdentifier](#cartidentifier) |
284
+
285
+ _(\*) Required._
286
+
287
+ ## CartMutationSetBillingAddress
288
+
289
+ _Object containing the following properties:_
290
+
291
+ | Property | Type |
292
+ | :------------------------- | :-------------------------------- |
293
+ | **`cart`** (\*) | [CartIdentifier](#cartidentifier) |
294
+ | **`billingAddress`** (\*) | [Address](#address) |
295
+ | `notificationEmailAddress` | `string` |
296
+ | `notificationPhoneNumber` | `string` |
297
+
298
+ _(\*) Required._
299
+
300
+ ## CartMutationSetShippingInfo
301
+
302
+ _Object containing the following properties:_
303
+
304
+ | Property | Type |
305
+ | :---------------- | :---------------------------------------------------- |
306
+ | **`cart`** (\*) | [CartIdentifier](#cartidentifier) |
307
+ | `shippingMethod` | [ShippingMethodIdentifier](#shippingmethodidentifier) |
308
+ | `shippingAddress` | [Address](#address) |
309
+
310
+ _(\*) Required._
311
+
312
+ ## CartQueryById
313
+
314
+ _Object containing the following properties:_
315
+
316
+ | Property | Type |
317
+ | :-------------- | :-------------------------------- |
318
+ | **`cart`** (\*) | [CartIdentifier](#cartidentifier) |
319
+
320
+ _(\*) Required._
321
+
322
+ ## Cart
323
+
324
+ _Object containing the following properties:_
325
+
326
+ | Property | Type | Default |
327
+ | :------------ | :---------------------------------------- | :------ |
328
+ | `identifier` | [CartIdentifier](#cartidentifier) | |
329
+ | `userId` | [IdentityIdentifier](#identityidentifier) | |
330
+ | `items` | _Array of [CartItem](#cartitem) items_ | `[]` |
331
+ | `price` | [CostBreakDown](#costbreakdown) | |
332
+ | `name` | `string` | `''` |
333
+ | `description` | `string` | `''` |
334
+
335
+ _All properties are optional._
336
+
337
+ ## CategoryIdentifier
338
+
339
+ _Object containing the following properties:_
340
+
341
+ | Property | Type |
342
+ | :------------- | :------- |
343
+ | **`key`** (\*) | `string` |
344
+
345
+ _(\*) Required._
346
+
347
+ ## CategoryPaginatedResult
348
+
349
+ _Object containing the following properties:_
350
+
351
+ | Property | Description | Type |
352
+ | :-------------------- | :----------------------------------- | :------------------------------------- |
353
+ | **`pageNumber`** (\*) | Current page number, starting from 1 | `number` (_≥1_) |
354
+ | **`pageSize`** (\*) | Number of items per page | `number` (_≥1_) |
355
+ | **`totalCount`** (\*) | Total number of items available | `number` (_≥0_) |
356
+ | **`totalPages`** (\*) | Total number of pages available | `number` (_≥0_) |
357
+ | **`items`** (\*) | | _Array of [Category](#category) items_ |
358
+
359
+ _(\*) Required._
360
+
361
+ ## CategoryQueryById
362
+
363
+ _Object containing the following properties:_
364
+
365
+ | Property | Type |
366
+ | :------------ | :---------------------------------------- |
367
+ | **`id`** (\*) | [CategoryIdentifier](#categoryidentifier) |
368
+
369
+ _(\*) Required._
370
+
371
+ ## CategoryQueryBySlug
372
+
373
+ _Object containing the following properties:_
374
+
375
+ | Property | Type |
376
+ | :-------------- | :------- |
377
+ | **`slug`** (\*) | `string` |
378
+
379
+ _(\*) Required._
380
+
381
+ ## CategoryQueryForBreadcrumb
382
+
383
+ _Object containing the following properties:_
384
+
385
+ | Property | Type |
386
+ | :------------ | :---------------------------------------- |
387
+ | **`id`** (\*) | [CategoryIdentifier](#categoryidentifier) |
388
+
389
+ _(\*) Required._
390
+
391
+ ## CategoryQueryForChildCategories
392
+
393
+ _Object containing the following properties:_
394
+
395
+ | Property | Type |
396
+ | :--------------------------- | :---------------------------------------- |
397
+ | **`parentId`** (\*) | [CategoryIdentifier](#categoryidentifier) |
398
+ | **`paginationOptions`** (\*) | [PaginationOptions](#paginationoptions) |
399
+
400
+ _(\*) Required._
401
+
402
+ ## CategoryQueryForTopCategories
403
+
404
+ _Object containing the following properties:_
405
+
406
+ | Property | Type |
407
+ | :--------------------------- | :-------------------------------------- |
408
+ | **`paginationOptions`** (\*) | [PaginationOptions](#paginationoptions) |
409
+
410
+ _(\*) Required._
411
+
412
+ ## Category
413
+
414
+ _Object containing the following properties:_
415
+
416
+ | Property | Type | Default |
417
+ | :--------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :------ |
418
+ | `identifier` | [CategoryIdentifier](#categoryidentifier) | |
419
+ | `name` | `string` | `''` |
420
+ | `slug` | `string` | `''` |
421
+ | `text` | `string` | `''` |
422
+ | `images` | _Array of objects:_<br /><ul><li>**`sourceUrl`** (\*): `string`</li><li>**`altText`** (\*): `string`</li><li>**`width`** (\*): `number`</li><li>**`height`** (\*): `number`</li></ul> | `[]` |
423
+ | `parentCategory` | [CategoryIdentifier](#categoryidentifier) | |
424
+
425
+ _All properties are optional._
426
+
427
+ ## CheckoutIdentifier
428
+
429
+ _Object containing the following properties:_
430
+
431
+ | Property | Type |
432
+ | :------------- | :------- |
433
+ | **`key`** (\*) | `string` |
434
+
435
+ _(\*) Required._
436
+
437
+ ## CheckoutItemIdentifier
438
+
439
+ _Object containing the following properties:_
440
+
441
+ | Property | Type |
442
+ | :------------- | :------- |
443
+ | **`key`** (\*) | `string` |
444
+
445
+ _(\*) Required._
446
+
447
+ ## CheckoutItem
448
+
449
+ _Object containing the following properties:_
450
+
451
+ | Property | Type | Default |
452
+ | :----------- | :---------------------------------------------------- | :------ |
453
+ | `identifier` | [CheckoutItemIdentifier](#checkoutitemidentifier) | |
454
+ | `variant` | [ProductVariantIdentifier](#productvariantidentifier) | |
455
+ | `quantity` | `number` | `0` |
456
+ | `price` | [ItemCostBreakdown](#itemcostbreakdown) | |
457
+
458
+ _All properties are optional._
459
+
460
+ ## CheckoutMutationAddPaymentInstruction
461
+
462
+ _Object containing the following properties:_
463
+
464
+ | Property | Type |
465
+ | :---------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
466
+ | **`paymentInstruction`** (\*) | _Object with properties:_<ul><li>**`amount`** (\*): [MonetaryAmount](#monetaryamount)</li><li>**`paymentMethod`** (\*): [PaymentMethodIdentifier](#paymentmethodidentifier)</li><li>**`protocolData`** (\*): _Array of [PaymentProtocolData](#paymentprotocoldata) items_ - Additional protocol-specific data for processing the payment.</li></ul> |
467
+ | **`checkout`** (\*) | [CartIdentifier](#cartidentifier) |
468
+
469
+ _(\*) Required._
470
+
471
+ ## CheckoutMutationFinalizeCheckout
472
+
473
+ _Object containing the following properties:_
474
+
475
+ | Property | Type |
476
+ | :------------------ | :-------------------------------- |
477
+ | **`checkout`** (\*) | [CartIdentifier](#cartidentifier) |
478
+
479
+ _(\*) Required._
480
+
481
+ ## CheckoutMutationInitiateCheckout
482
+
483
+ _Object containing the following properties:_
484
+
485
+ | Property | Type |
486
+ | :------------------ | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
487
+ | **`cart`** (\*) | [Cart](#cart) |
488
+ | `billingAddress` | _Object with properties:_<ul><li>**`firstName`** (\*): `string`</li><li>**`lastName`** (\*): `string`</li><li>**`streetAddress`** (\*): `string`</li><li>**`streetNumber`** (\*): `string`</li><li>**`city`** (\*): `string`</li><li>**`region`** (\*): `string`</li><li>**`postalCode`** (\*): `string`</li><li>**`countryCode`** (\*): `string`</li></ul> |
489
+ | `notificationEmail` | `string` |
490
+ | `notificationPhone` | `string` |
491
+
492
+ _(\*) Required._
493
+
494
+ ## CheckoutMutationRemovePaymentInstruction
495
+
496
+ _Object containing the following properties:_
497
+
498
+ | Property | Type |
499
+ | :---------------------------- | :------------------------------------------------------------ |
500
+ | **`paymentInstruction`** (\*) | [PaymentInstructionIdentifier](#paymentinstructionidentifier) |
501
+ | **`checkout`** (\*) | [CartIdentifier](#cartidentifier) |
502
+
503
+ _(\*) Required._
504
+
505
+ ## CheckoutMutationSetShippingAddress
506
+
507
+ _Object containing the following properties:_
508
+
509
+ | Property | Type |
510
+ | :------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
511
+ | **`checkout`** (\*) | [CartIdentifier](#cartidentifier) |
512
+ | **`shippingAddress`** (\*) | _Object with properties:_<ul><li>**`firstName`** (\*): `string`</li><li>**`lastName`** (\*): `string`</li><li>**`streetAddress`** (\*): `string`</li><li>**`streetNumber`** (\*): `string`</li><li>**`city`** (\*): `string`</li><li>**`region`** (\*): `string`</li><li>**`postalCode`** (\*): `string`</li><li>**`countryCode`** (\*): `string`</li></ul> |
513
+
514
+ _(\*) Required._
515
+
516
+ ## CheckoutMutationSetShippingInstruction
517
+
518
+ _Object containing the following properties:_
519
+
520
+ | Property | Type |
521
+ | :----------------------------- | :------------------------------------------ |
522
+ | **`shippingInstruction`** (\*) | [ShippingInstruction](#shippinginstruction) |
523
+ | **`checkout`** (\*) | [CartIdentifier](#cartidentifier) |
524
+
525
+ _(\*) Required._
526
+
527
+ ## CheckoutQueryById
528
+
529
+ _Object containing the following properties:_
530
+
531
+ | Property | Type |
532
+ | :-------------------- | :---------------------------------------- |
533
+ | **`identifier`** (\*) | [CheckoutIdentifier](#checkoutidentifier) |
534
+
535
+ _(\*) Required._
536
+
537
+ ## CheckoutQueryForAvailablePaymentMethods
538
+
539
+ _Object containing the following properties:_
540
+
541
+ | Property | Type |
542
+ | :------------------ | :---------------------------------------- |
543
+ | **`checkout`** (\*) | [CheckoutIdentifier](#checkoutidentifier) |
544
+
545
+ _(\*) Required._
546
+
547
+ ## CheckoutQueryForAvailableShippingMethods
548
+
549
+ _Object containing the following properties:_
550
+
551
+ | Property | Type |
552
+ | :------------------ | :---------------------------------------- |
553
+ | **`checkout`** (\*) | [CheckoutIdentifier](#checkoutidentifier) |
554
+
555
+ _(\*) Required._
556
+
557
+ ## Checkout
558
+
559
+ _Object containing the following properties:_
560
+
561
+ | Property | Description | Type | Default |
562
+ | :------------------------ | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------ |
563
+ | `identifier` | | [CheckoutIdentifier](#checkoutidentifier) | |
564
+ | `originalCartReference` | | [CartIdentifier](#cartidentifier) | |
565
+ | `resultingOrder` | | [OrderIdentifier](#orderidentifier) | |
566
+ | `items` | | _Array of [CheckoutItem](#checkoutitem) items_ | `[]` |
567
+ | `price` | | [CostBreakDown](#costbreakdown) | |
568
+ | `name` | | `string` | `''` |
569
+ | `description` | | `string` | `''` |
570
+ | **`billingAddress`** (\*) | | _Object with properties:_<ul><li>`identifier`: [AddressIdentifier](#addressidentifier)</li><li>**`firstName`** (\*): `string`</li><li>**`lastName`** (\*): `string`</li><li>**`streetAddress`** (\*): `string`</li><li>**`streetNumber`** (\*): `string`</li><li>**`city`** (\*): `string`</li><li>**`region`** (\*): `string`</li><li>**`postalCode`** (\*): `string`</li><li>**`countryCode`** (\*): `string`</li></ul> (_nullable_) | |
571
+ | `shippingAddress` | | [Address](#address) | |
572
+ | `shippingInstruction` | | [ShippingInstruction](#shippinginstruction) | |
573
+ | `paymentInstructions` | | _Array of [PaymentInstruction](#paymentinstruction) items_ | `[]` |
574
+ | `readyForFinalization` | Indicates if the checkout has all the required information to be finalized into an order. This does not mean it will succeed, as there may be issues with payment or shipping, but all required information is present. | `boolean` | `false` |
575
+
576
+ _(\*) Required._
577
+
578
+ ## CostBreakDown
579
+
580
+ _Object containing the following properties:_
581
+
582
+ | Property | Description | Type |
583
+ | :------------------ | :----------------------------------------------------------------------------- | :-------------------------------- |
584
+ | `totalTax` | The amount of tax paid on the cart. This may include VAT, GST, sales tax, etc. | [MonetaryAmount](#monetaryamount) |
585
+ | `totalDiscount` | The amount of discount applied to the cart. | [MonetaryAmount](#monetaryamount) |
586
+ | `totalSurcharge` | The amount of surcharge applied to the cart. | [MonetaryAmount](#monetaryamount) |
587
+ | `totalShipping` | The amount of shipping fees for the cart. | [MonetaryAmount](#monetaryamount) |
588
+ | `totalProductPrice` | The total price of products in the cart. | [MonetaryAmount](#monetaryamount) |
589
+ | `grandTotal` | The total price for the cart including all taxes, discounts, and shipping. | [MonetaryAmount](#monetaryamount) |
590
+
591
+ _All properties are optional._
592
+
593
+ ## Currency
594
+
595
+ _Enum, one of the following possible values:_
596
+
597
+ <details>
598
+ <summary><i>Expand for full list of 181 values</i></summary>
599
+
600
+ - `'AED'`
601
+ - `'AFN'`
602
+ - `'ALL'`
603
+ - `'AMD'`
604
+ - `'ANG'`
605
+ - `'AOA'`
606
+ - `'ARS'`
607
+ - `'AUD'`
608
+ - `'AWG'`
609
+ - `'AZN'`
610
+ - `'BAM'`
611
+ - `'BBD'`
612
+ - `'BDT'`
613
+ - `'BGN'`
614
+ - `'BHD'`
615
+ - `'BIF'`
616
+ - `'BMD'`
617
+ - `'BND'`
618
+ - `'BOB'`
619
+ - `'BOV'`
620
+ - `'BRL'`
621
+ - `'BSD'`
622
+ - `'BTN'`
623
+ - `'BWP'`
624
+ - `'BYN'`
625
+ - `'BZD'`
626
+ - `'CAD'`
627
+ - `'CDF'`
628
+ - `'CHE'`
629
+ - `'CHF'`
630
+ - `'CHW'`
631
+ - `'CLF'`
632
+ - `'CLP'`
633
+ - `'CNY'`
634
+ - `'COP'`
635
+ - `'COU'`
636
+ - `'CRC'`
637
+ - `'CUC'`
638
+ - `'CUP'`
639
+ - `'CVE'`
640
+ - `'CZK'`
641
+ - `'DJF'`
642
+ - `'DKK'`
643
+ - `'DOP'`
644
+ - `'DZD'`
645
+ - `'EGP'`
646
+ - `'ERN'`
647
+ - `'ETB'`
648
+ - `'EUR'`
649
+ - `'FJD'`
650
+ - `'FKP'`
651
+ - `'GBP'`
652
+ - `'GEL'`
653
+ - `'GHS'`
654
+ - `'GIP'`
655
+ - `'GMD'`
656
+ - `'GNF'`
657
+ - `'GTQ'`
658
+ - `'GYD'`
659
+ - `'HKD'`
660
+ - `'HNL'`
661
+ - `'HRK'`
662
+ - `'HTG'`
663
+ - `'HUF'`
664
+ - `'IDR'`
665
+ - `'ILS'`
666
+ - `'INR'`
667
+ - `'IQD'`
668
+ - `'IRR'`
669
+ - `'ISK'`
670
+ - `'JMD'`
671
+ - `'JOD'`
672
+ - `'JPY'`
673
+ - `'KES'`
674
+ - `'KGS'`
675
+ - `'KHR'`
676
+ - `'KMF'`
677
+ - `'KPW'`
678
+ - `'KRW'`
679
+ - `'KWD'`
680
+ - `'KYD'`
681
+ - `'KZT'`
682
+ - `'LAK'`
683
+ - `'LBP'`
684
+ - `'LKR'`
685
+ - `'LRD'`
686
+ - `'LSL'`
687
+ - `'LYD'`
688
+ - `'MAD'`
689
+ - `'MDL'`
690
+ - `'MGA'`
691
+ - `'MKD'`
692
+ - `'MMK'`
693
+ - `'MNT'`
694
+ - `'MOP'`
695
+ - `'MRU'`
696
+ - `'MUR'`
697
+ - `'MVR'`
698
+ - `'MWK'`
699
+ - `'MXN'`
700
+ - `'MXV'`
701
+ - `'MYR'`
702
+ - `'MZN'`
703
+ - `'NAD'`
704
+ - `'NGN'`
705
+ - `'NIO'`
706
+ - `'NOK'`
707
+ - `'NPR'`
708
+ - `'NZD'`
709
+ - `'OMR'`
710
+ - `'PAB'`
711
+ - `'PEN'`
712
+ - `'PGK'`
713
+ - `'PHP'`
714
+ - `'PKR'`
715
+ - `'PLN'`
716
+ - `'PYG'`
717
+ - `'QAR'`
718
+ - `'RON'`
719
+ - `'RSD'`
720
+ - `'RUB'`
721
+ - `'RWF'`
722
+ - `'SAR'`
723
+ - `'SBD'`
724
+ - `'SCR'`
725
+ - `'SDG'`
726
+ - `'SEK'`
727
+ - `'SGD'`
728
+ - `'SHP'`
729
+ - `'SLE'`
730
+ - `'SLL'`
731
+ - `'SOS'`
732
+ - `'SRD'`
733
+ - `'SSP'`
734
+ - `'STN'`
735
+ - `'SYP'`
736
+ - `'SZL'`
737
+ - `'THB'`
738
+ - `'TJS'`
739
+ - `'TMT'`
740
+ - `'TND'`
741
+ - `'TOP'`
742
+ - `'TRY'`
743
+ - `'TTD'`
744
+ - `'TVD'`
745
+ - `'TWD'`
746
+ - `'TZS'`
747
+ - `'UAH'`
748
+ - `'UGX'`
749
+ - `'USD'`
750
+ - `'USN'`
751
+ - `'UYI'`
752
+ - `'UYU'`
753
+ - `'UYW'`
754
+ - `'UZS'`
755
+ - `'VED'`
756
+ - `'VES'`
757
+ - `'VND'`
758
+ - `'VUV'`
759
+ - `'WST'`
760
+ - `'XAF'`
761
+ - `'XAG'`
762
+ - `'XAU'`
763
+ - `'XBA'`
764
+ - `'XBB'`
765
+ - `'XBC'`
766
+ - `'XBD'`
767
+ - `'XCD'`
768
+ - `'XDR'`
769
+ - `'XOF'`
770
+ - `'XPD'`
771
+ - `'XPF'`
772
+ - `'XPT'`
773
+ - `'XSU'`
774
+ - `'XTS'`
775
+ - `'XUA'`
776
+ - `'XXX'`
777
+ - `'YER'`
778
+ - `'ZAR'`
779
+ - `'ZMW'`
780
+ - `'ZWL'`
781
+
782
+ </details>
783
+
784
+ ## CustomerPriceQuery
785
+
786
+ _Object containing the following properties:_
787
+
788
+ | Property | Type |
789
+ | :----------------- | :---------------------------------------------------- |
790
+ | **`variant`** (\*) | [ProductVariantIdentifier](#productvariantidentifier) |
791
+
792
+ _(\*) Required._
793
+
794
+ ## FacetIdentifier
795
+
796
+ _Object containing the following properties:_
797
+
798
+ | Property | Type |
799
+ | :------------- | :------- |
800
+ | **`key`** (\*) | `string` |
801
+
802
+ _(\*) Required._
803
+
804
+ ## FacetValueIdentifier
805
+
806
+ _Object containing the following properties:_
807
+
808
+ | Property | Type |
809
+ | :--------------- | :---------------------------------- |
810
+ | **`facet`** (\*) | [FacetIdentifier](#facetidentifier) |
811
+ | **`key`** (\*) | `string` |
812
+
813
+ _(\*) Required._
814
+
815
+ ## FulfillmentCenterIdentifier
816
+
817
+ _Object containing the following properties:_
818
+
819
+ | Property | Type |
820
+ | :------------- | :------- |
821
+ | **`key`** (\*) | `string` |
822
+
823
+ _(\*) Required._
824
+
825
+ ## GenericError
826
+
827
+ _Object containing the following properties:_
828
+
829
+ | Property | Type |
830
+ | :----------------- | :------------------------- |
831
+ | **`type`** (\*) | `'Generic'` |
832
+ | **`message`** (\*) | `string` (_min length: 1_) |
833
+
834
+ _(\*) Required._
835
+
836
+ ## GuestIdentity
837
+
838
+ _Object containing the following properties:_
839
+
840
+ | Property | Type |
841
+ | :-------------- | :---------------------------------------- |
842
+ | **`id`** (\*) | [IdentityIdentifier](#identityidentifier) |
843
+ | **`type`** (\*) | `'Guest'` |
844
+
845
+ _(\*) Required._
846
+
847
+ ## IdentityIdentifier
848
+
849
+ _Object containing the following properties:_
850
+
851
+ | Property | Type |
852
+ | :---------------- | :------- |
853
+ | **`userId`** (\*) | `string` |
854
+
855
+ _(\*) Required._
856
+
857
+ ## IdentityMutationLogin
858
+
859
+ _Object containing the following properties:_
860
+
861
+ | Property | Type |
862
+ | :------------------ | :------- |
863
+ | **`username`** (\*) | `string` |
864
+ | **`password`** (\*) | `string` |
865
+
866
+ _(\*) Required._
867
+
868
+ ## IdentityMutationLogout
869
+
870
+ _Object containing the following properties:_
871
+
872
+ | Property | Type |
873
+ | :------- | :--- |
874
+
875
+ _All properties are optional._
876
+
877
+ ## IdentityMutationRegister
878
+
879
+ _Object containing the following properties:_
880
+
881
+ | Property | Type |
882
+ | :------------------ | :------- |
883
+ | **`username`** (\*) | `string` |
884
+ | **`password`** (\*) | `string` |
885
+
886
+ _(\*) Required._
887
+
888
+ ## IdentityQuerySelf
889
+
890
+ _Object containing the following properties:_
891
+
892
+ | Property | Type |
893
+ | :------- | :--- |
894
+
895
+ _All properties are optional._
896
+
897
+ ## Identity
898
+
899
+ _Union of the following possible types:_
900
+
901
+ - [AnonymousIdentity](#anonymousidentity)
902
+ - [GuestIdentity](#guestidentity)
903
+ - [RegisteredIdentity](#registeredidentity)
904
+
905
+ ## Image
906
+
907
+ _Object containing the following properties:_
908
+
909
+ | Property | Description | Type | Default |
910
+ | :---------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------- | :------ |
911
+ | `sourceUrl` | The original source URL of the image. Pass this through your image resizing and transcoding service to get the desired size, and generate thumbnails as needed | `string` | `''` |
912
+ | `altText` | Alternative text for the image, for accessibility purposes. Must always be set, and non-empty | `string` | `''` |
913
+ | `width` | Width of the original image, in pixels, if known | `number` | |
914
+ | `height` | Height of the original image, in pixels, if known | `number` | |
915
+
916
+ _All properties are optional._
917
+
918
+ ## InvalidInputError
919
+
920
+ _Object containing the following properties:_
921
+
922
+ | Property | Type |
923
+ | :--------------- | :--------------- |
924
+ | **`type`** (\*) | `'InvalidInput'` |
925
+ | **`error`** (\*) | `string` |
926
+
927
+ _(\*) Required._
928
+
929
+ ## InvalidOutputError
930
+
931
+ _Object containing the following properties:_
932
+
933
+ | Property | Type |
934
+ | :--------------- | :---------------- |
935
+ | **`type`** (\*) | `'InvalidOutput'` |
936
+ | **`error`** (\*) | `string` |
937
+
938
+ _(\*) Required._
939
+
940
+ ## InventoryIdentifier
941
+
942
+ _Object containing the following properties:_
943
+
944
+ | Property | Type |
945
+ | :--------------------------- | :---------------------------------------------------------- |
946
+ | **`variant`** (\*) | [ProductVariantIdentifier](#productvariantidentifier) |
947
+ | **`fulfillmentCenter`** (\*) | [FulfillmentCenterIdentifier](#fulfillmentcenteridentifier) |
948
+
949
+ _(\*) Required._
950
+
951
+ ## InventoryQueryBySKU
952
+
953
+ _Object containing the following properties:_
954
+
955
+ | Property | Description | Type |
956
+ | :-------------------------- | :--------------------------------------------------- | :---------------------------------------------------------- |
957
+ | **`variant`** (\*) | The unique identifier for the product variant (SKU). | [ProductVariantIdentifier](#productvariantidentifier) |
958
+ | **`fulfilmentCenter`** (\*) | | [FulfillmentCenterIdentifier](#fulfillmentcenteridentifier) |
959
+
960
+ _(\*) Required._
961
+
962
+ ## Inventory
963
+
964
+ _Object containing the following properties:_
965
+
966
+ | Property | Type |
967
+ | :-------------------- | :------------------------------------------ |
968
+ | **`identifier`** (\*) | [InventoryIdentifier](#inventoryidentifier) |
969
+ | **`quantity`** (\*) | `number` |
970
+ | **`status`** (\*) | [InventoryStatus](#inventorystatus) |
971
+
972
+ _(\*) Required._
973
+
974
+ ## InventoryStatus
975
+
976
+ _Enum, one of the following possible values:_
977
+
978
+ - `'inStock'`
979
+ - `'outOfStock'`
980
+ - `'onBackOrder'`
981
+ - `'preOrder'`
982
+ - `'discontinued'`
983
+
984
+ ## ItemCostBreakdown
985
+
986
+ _Object containing the following properties:_
987
+
988
+ | Property | Description | Type |
989
+ | :-------------- | :--------------------------------------------------- | :-------------------------------- |
990
+ | `unitPrice` | The price per single unit of the item. | [MonetaryAmount](#monetaryamount) |
991
+ | `unitDiscount` | The discount applied per single unit of the item. | [MonetaryAmount](#monetaryamount) |
992
+ | `totalPrice` | The total price for all units of the item. | [MonetaryAmount](#monetaryamount) |
993
+ | `totalDiscount` | The total discount applied to all units of the item. | [MonetaryAmount](#monetaryamount) |
994
+
995
+ _All properties are optional._
996
+
997
+ ## LanguageContext
998
+
999
+ _Object containing the following properties:_
1000
+
1001
+ | Property | Type | Default |
1002
+ | :------------- | :-------------------- | :-------- |
1003
+ | `locale` | `string` | `'en-US'` |
1004
+ | `currencyCode` | [Currency](#currency) | |
1005
+
1006
+ _All properties are optional._
1007
+
1008
+ ## ListPriceQuery
1009
+
1010
+ _Object containing the following properties:_
1011
+
1012
+ | Property | Type |
1013
+ | :----------------- | :---------------------------------------------------- |
1014
+ | **`variant`** (\*) | [ProductVariantIdentifier](#productvariantidentifier) |
1015
+
1016
+ _(\*) Required._
1017
+
1018
+ ## MonetaryAmount
1019
+
1020
+ _Object containing the following properties:_
1021
+
1022
+ | Property | Description | Type |
1023
+ | :------------------ | :------------------------------------------------------------------------ | :-------------------- |
1024
+ | **`value`** (\*) | The monetary amount in decimal-precision. | `number` |
1025
+ | **`currency`** (\*) | The currency associated with the amount, as a ISO 4217 standardized code. | [Currency](#currency) |
1026
+
1027
+ _(\*) Required._
1028
+
1029
+ ## NotFoundError
1030
+
1031
+ _Object containing the following properties:_
1032
+
1033
+ | Property | Type |
1034
+ | :-------------------- | :----------- |
1035
+ | **`type`** (\*) | `'NotFound'` |
1036
+ | **`identifier`** (\*) | `unknown` |
1037
+
1038
+ _(\*) Required._
1039
+
1040
+ ## OrderIdentifier
1041
+
1042
+ _Object containing the following properties:_
1043
+
1044
+ | Property | Type |
1045
+ | :------------- | :------- |
1046
+ | **`key`** (\*) | `string` |
1047
+
1048
+ _(\*) Required._
1049
+
1050
+ ## OrderInventoryStatus
1051
+
1052
+ The inventory release status of the order.
1053
+
1054
+ _Enum, one of the following possible values:_
1055
+
1056
+ - `'NotAllocated'`
1057
+ - `'Allocated'`
1058
+ - `'Backordered'`
1059
+ - `'Preordered'`
1060
+
1061
+ ## OrderItemIdentifier
1062
+
1063
+ _Object containing the following properties:_
1064
+
1065
+ | Property | Type |
1066
+ | :------------- | :------- |
1067
+ | **`key`** (\*) | `string` |
1068
+
1069
+ _(\*) Required._
1070
+
1071
+ ## OrderItem
1072
+
1073
+ _Object containing the following properties:_
1074
+
1075
+ | Property | Description | Type |
1076
+ | :------------------------- | :---------------------------------------------- | :---------------------------------------------------- |
1077
+ | **`identifier`** (\*) | | [OrderItemIdentifier](#orderitemidentifier) |
1078
+ | **`variant`** (\*) | | [ProductVariantIdentifier](#productvariantidentifier) |
1079
+ | **`quantity`** (\*) | | `number` |
1080
+ | **`price`** (\*) | | [ItemCostBreakdown](#itemcostbreakdown) |
1081
+ | **`inventoryStatus`** (\*) | The inventory release status of the order item. | [OrderInventoryStatus](#orderinventorystatus) |
1082
+
1083
+ _(\*) Required._
1084
+
1085
+ ## OrderQueryById
1086
+
1087
+ _Object containing the following properties:_
1088
+
1089
+ | Property | Type |
1090
+ | :--------------- | :---------------------------------- |
1091
+ | **`order`** (\*) | [OrderIdentifier](#orderidentifier) |
1092
+
1093
+ _(\*) Required._
1094
+
1095
+ ## Order
1096
+
1097
+ _Object containing the following properties:_
1098
+
1099
+ | Property | Description | Type |
1100
+ | :----------------------------- | :------------------------------------------------------- | :--------------------------------------------------------- |
1101
+ | **`identifier`** (\*) | | [OrderIdentifier](#orderidentifier) |
1102
+ | **`userId`** (\*) | | [IdentityIdentifier](#identityidentifier) |
1103
+ | **`items`** (\*) | | _Array of [OrderItem](#orderitem) items_ |
1104
+ | **`price`** (\*) | | [CostBreakDown](#costbreakdown) |
1105
+ | `name` | | `string` |
1106
+ | `description` | | `string` |
1107
+ | `shippingAddress` | | [Address](#address) |
1108
+ | `billingAddress` | | [Address](#address) |
1109
+ | `shippingMethod` | | [ShippingMethod](#shippingmethod) |
1110
+ | **`orderStatus`** (\*) | The current status of the order. | [OrderStatus](#orderstatus) |
1111
+ | **`inventoryStatus`** (\*) | The inventory release status of the order. | [OrderInventoryStatus](#orderinventorystatus) |
1112
+ | **`paymentInstructions`** (\*) | | _Array of [PaymentInstruction](#paymentinstruction) items_ |
1113
+ | `cartReference` | Reference to the cart from which this order was created. | [CartIdentifier](#cartidentifier) |
1114
+
1115
+ _(\*) Required._
1116
+
1117
+ ## OrderSearchIdentifier
1118
+
1119
+ _Object containing the following properties:_
1120
+
1121
+ | Property | Description | Type |
1122
+ | :--------------------------- | :----------------------------------------------------------------------------------------------------------- | :------------------------------------------- |
1123
+ | **`term`** (\*) | The search term used to find orders. Not all providers may support term-based search for orders. | `string` |
1124
+ | `partNumber` | An optional list part number to filter orders by specific products. Will be ANDed together. | `Array<string>` |
1125
+ | `orderStatus` | An optional list of order statuses to filter the search results. | _Array of [OrderStatus](#orderstatus) items_ |
1126
+ | `userId` | An optional user ID to filter orders by specific users. Mostly for b2b usecases with hierachial order access | [IdentityIdentifier](#identityidentifier) |
1127
+ | `startDate` | An optional start date to filter orders from a specific date onwards. ISO8601 | `string` |
1128
+ | `endDate` | An optional end date to filter orders up to a specific date. ISO8601 | `string` |
1129
+ | **`filters`** (\*) | Additional filters applied to the search results. | `Array<string>` |
1130
+ | **`paginationOptions`** (\*) | Pagination options for the search results. | [PaginationOptions](#paginationoptions) |
1131
+
1132
+ _(\*) Required._
1133
+
1134
+ ## OrderSearchQueryByTerm
1135
+
1136
+ _Object containing the following properties:_
1137
+
1138
+ | Property | Type |
1139
+ | :---------------- | :---------------------------------------------- |
1140
+ | **`search`** (\*) | [OrderSearchIdentifier](#ordersearchidentifier) |
1141
+
1142
+ _(\*) Required._
1143
+
1144
+ ## OrderSearchResultItem
1145
+
1146
+ _Object containing the following properties:_
1147
+
1148
+ | Property | Description | Type |
1149
+ | :------------------------- | :----------------------------------------- | :-------------------------------------------- |
1150
+ | **`identifier`** (\*) | | [OrderIdentifier](#orderidentifier) |
1151
+ | **`userId`** (\*) | | [IdentityIdentifier](#identityidentifier) |
1152
+ | **`customerName`** (\*) | | `string` |
1153
+ | `shippingAddress` | | [Address](#address) |
1154
+ | **`orderDate`** (\*) | | `string` |
1155
+ | **`orderStatus`** (\*) | The current status of the order. | [OrderStatus](#orderstatus) |
1156
+ | **`inventoryStatus`** (\*) | The inventory release status of the order. | [OrderInventoryStatus](#orderinventorystatus) |
1157
+ | **`totalAmount`** (\*) | | [MonetaryAmount](#monetaryamount) |
1158
+
1159
+ _(\*) Required._
1160
+
1161
+ ## OrderSearchResult
1162
+
1163
+ _Object containing the following properties:_
1164
+
1165
+ | Property | Description | Type |
1166
+ | :-------------------- | :----------------------------------- | :--------------------------------------------------------------- |
1167
+ | **`pageNumber`** (\*) | Current page number, starting from 1 | `number` (_≥1_) |
1168
+ | **`pageSize`** (\*) | Number of items per page | `number` (_≥1_) |
1169
+ | **`totalCount`** (\*) | Total number of items available | `number` (_≥0_) |
1170
+ | **`totalPages`** (\*) | Total number of pages available | `number` (_≥0_) |
1171
+ | **`items`** (\*) | | _Array of [OrderSearchResultItem](#ordersearchresultitem) items_ |
1172
+ | **`identifier`** (\*) | | [OrderSearchIdentifier](#ordersearchidentifier) |
1173
+
1174
+ _(\*) Required._
1175
+
1176
+ ## OrderStatus
1177
+
1178
+ The current status of the order.
1179
+
1180
+ _Enum, one of the following possible values:_
1181
+
1182
+ - `'AwaitingPayment'`
1183
+ - `'ReleasedToFulfillment'`
1184
+ - `'Shipped'`
1185
+ - `'Cancelled'`
1186
+
1187
+ ## PaginationOptions
1188
+
1189
+ _Object containing the following properties:_
1190
+
1191
+ | Property | Description | Type | Default |
1192
+ | :----------- | :----------------------------------- | :------------------- | :------ |
1193
+ | `pageNumber` | Current page number, starting from 1 | `number` | `1` |
1194
+ | `pageSize` | Number of items per page | `number` (_≥1, ≤50_) | `20` |
1195
+
1196
+ _All properties are optional._
1197
+
1198
+ ## PaymentInstructionIdentifier
1199
+
1200
+ _Object containing the following properties:_
1201
+
1202
+ | Property | Type |
1203
+ | :------------- | :------- |
1204
+ | **`key`** (\*) | `string` |
1205
+
1206
+ _(\*) Required._
1207
+
1208
+ ## PaymentInstruction
1209
+
1210
+ _Object containing the following properties:_
1211
+
1212
+ | Property | Description | Type |
1213
+ | :----------------------- | :------------------------------------------------------------ | :------------------------------------------------------------ |
1214
+ | **`identifier`** (\*) | | [PaymentInstructionIdentifier](#paymentinstructionidentifier) |
1215
+ | **`amount`** (\*) | | [MonetaryAmount](#monetaryamount) |
1216
+ | **`paymentMethod`** (\*) | | [PaymentMethodIdentifier](#paymentmethodidentifier) |
1217
+ | **`protocolData`** (\*) | Additional protocol-specific data for processing the payment. | _Array of [PaymentProtocolData](#paymentprotocoldata) items_ |
1218
+ | **`status`** (\*) | | [PaymentStatus](#paymentstatus) |
1219
+
1220
+ _(\*) Required._
1221
+
1222
+ ## PaymentMethodIdentifier
1223
+
1224
+ _Object containing the following properties:_
1225
+
1226
+ | Property | Type |
1227
+ | :-------------------------- | :------- |
1228
+ | **`method`** (\*) | `string` |
1229
+ | **`name`** (\*) | `string` |
1230
+ | **`paymentProcessor`** (\*) | `string` |
1231
+
1232
+ _(\*) Required._
1233
+
1234
+ ## PaymentMethod
1235
+
1236
+ _Object containing the following properties:_
1237
+
1238
+ | Property | Type |
1239
+ | :--------------------- | :-------------------------------------------------- |
1240
+ | **`identifier`** (\*) | [PaymentMethodIdentifier](#paymentmethodidentifier) |
1241
+ | `logo` | [Image](#image) |
1242
+ | **`description`** (\*) | `string` |
1243
+ | **`isPunchOut`** (\*) | `boolean` |
1244
+
1245
+ _(\*) Required._
1246
+
1247
+ ## PaymentProtocolData
1248
+
1249
+ _Object containing the following properties:_
1250
+
1251
+ | Property | Type |
1252
+ | :--------------- | :------- |
1253
+ | **`key`** (\*) | `string` |
1254
+ | **`value`** (\*) | `string` |
1255
+
1256
+ _(\*) Required._
1257
+
1258
+ ## PaymentStatus
1259
+
1260
+ _Enum, one of the following possible values:_
1261
+
1262
+ - `'pending'`
1263
+ - `'authorized'`
1264
+ - `'canceled'`
1265
+ - `'capture'`
1266
+ - `'partial_capture'`
1267
+ - `'refunded'`
1268
+ - `'partial_refund'`
1269
+
1270
+ ## PickupPointIdentifier
1271
+
1272
+ _Object containing the following properties:_
1273
+
1274
+ | Property | Type |
1275
+ | :------------- | :------- |
1276
+ | **`key`** (\*) | `string` |
1277
+
1278
+ _(\*) Required._
1279
+
1280
+ ## PickupPoint
1281
+
1282
+ _Object containing the following properties:_
1283
+
1284
+ | Property | Description | Type |
1285
+ | :--------------------- | :--------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------ |
1286
+ | **`identifier`** (\*) | | _Object with properties:_<ul><li>**`key`** (\*): `string`</li></ul> |
1287
+ | **`name`** (\*) | | `string` |
1288
+ | **`description`** (\*) | | `string` |
1289
+ | **`address`** (\*) | | [Address](#address) |
1290
+ | `openingHours` | The opening hours of the pickup point, if applicable. This could be a string like "Mon-Fri 9am-5pm". | `string` |
1291
+ | `contactPhone` | The contact phone number for the pickup point, if applicable. | `string` |
1292
+ | `contactEmail` | The contact email for the pickup point, if applicable. | `string` |
1293
+ | `instructions` | Any special instructions for picking up from this point. | `string` |
1294
+
1295
+ _(\*) Required._
1296
+
1297
+ ## PriceIdentifier
1298
+
1299
+ _Object containing the following properties:_
1300
+
1301
+ | Property | Type |
1302
+ | :----------------- | :---------------------------------------------------- |
1303
+ | **`variant`** (\*) | [ProductVariantIdentifier](#productvariantidentifier) |
1304
+
1305
+ _(\*) Required._
1306
+
1307
+ ## Price
1308
+
1309
+ _Object containing the following properties:_
1310
+
1311
+ | Property | Type |
1312
+ | :---------------------- | :------------------------------------------- |
1313
+ | **`identifier`** (\*) | [PriceIdentifier](#priceidentifier) |
1314
+ | **`unitPrice`** (\*) | [MonetaryAmount](#monetaryamount) |
1315
+ | **`tieredPrices`** (\*) | _Array of [TieredPrice](#tieredprice) items_ |
1316
+
1317
+ _(\*) Required._
1318
+
1319
+ ## ProductAttributeIdentifier
1320
+
1321
+ _Object containing the following properties:_
1322
+
1323
+ | Property | Description | Type |
1324
+ | :------------- | :----------------------------------------------- | :------- |
1325
+ | **`key`** (\*) | The unique identifier for the product attribute. | `string` |
1326
+
1327
+ _(\*) Required._
1328
+
1329
+ ## ProductAttribute
1330
+
1331
+ _Object containing the following properties:_
1332
+
1333
+ | Property | Description | Type |
1334
+ | :-------------------- | :------------------------------------------------------------------------------------------------------------ | :--------------------------------------------------------------- |
1335
+ | **`identifier`** (\*) | The unique identifier for the attribute, also typically used as the facet key if the attribute is filterable. | [ProductAttributeIdentifier](#productattributeidentifier) |
1336
+ | **`group`** (\*) | | `string` |
1337
+ | **`name`** (\*) | | `string` |
1338
+ | **`values`** (\*) | | _Array of [ProductAttributeValue](#productattributevalue) items_ |
1339
+
1340
+ _(\*) Required._
1341
+
1342
+ ## ProductAttributeValueIdentifier
1343
+
1344
+ _Object containing the following properties:_
1345
+
1346
+ | Property | Description | Type |
1347
+ | :------------- | :----------------------------------------------------- | :------- |
1348
+ | **`key`** (\*) | The unique identifier for the product attribute value. | `string` |
1349
+
1350
+ _(\*) Required._
1351
+
1352
+ ## ProductAttributeValue
1353
+
1354
+ _Object containing the following properties:_
1355
+
1356
+ | Property | Description | Type |
1357
+ | :-------------------- | :-------------------------------------------------------------------------------------- | :------------------------------------------------------------------ |
1358
+ | **`identifier`** (\*) | The unique identifier for the attribute value. | [ProductAttributeValueIdentifier](#productattributevalueidentifier) |
1359
+ | **`value`** (\*) | The value of the attribute. Typically a language independent string | `string` |
1360
+ | **`label`** (\*) | The human friendly label for the attribute value. Typically a language dependent string | `string` |
1361
+
1362
+ _(\*) Required._
1363
+
1364
+ ## ProductIdentifier
1365
+
1366
+ _Object containing the following properties:_
1367
+
1368
+ | Property | Type |
1369
+ | :------------- | :------- |
1370
+ | **`key`** (\*) | `string` |
1371
+
1372
+ _(\*) Required._
1373
+
1374
+ ## ProductOptionIdentifier
1375
+
1376
+ _Object containing the following properties:_
1377
+
1378
+ | Property | Description | Type |
1379
+ | :------------- | :-------------------------------------------- | :------- |
1380
+ | **`key`** (\*) | The unique identifier for the product option. | `string` |
1381
+
1382
+ _(\*) Required._
1383
+
1384
+ ## ProductOption
1385
+
1386
+ _Object containing the following properties:_
1387
+
1388
+ | Property | Description | Type |
1389
+ | :-------------------- | :------------------------------------------- | :--------------------------------------------------------- |
1390
+ | **`identifier`** (\*) | The unique identifier for the option. | [ProductOptionIdentifier](#productoptionidentifier) |
1391
+ | **`name`** (\*) | The name of the option, e.g., Size or Color. | `string` |
1392
+ | **`values`** (\*) | A list of possible values for the option. | _Array of [ProductOptionValue](#productoptionvalue) items_ |
1393
+
1394
+ _(\*) Required._
1395
+
1396
+ ## ProductOptionValueIdentifier
1397
+
1398
+ _Object containing the following properties:_
1399
+
1400
+ | Property | Description | Type |
1401
+ | :---------------- | :------------------------------------------------------- | :-------------------------------------------------- |
1402
+ | **`option`** (\*) | | [ProductOptionIdentifier](#productoptionidentifier) |
1403
+ | **`key`** (\*) | The value of the product option, e.g., "Red" or "Large". | `string` |
1404
+
1405
+ _(\*) Required._
1406
+
1407
+ ## ProductOptionValue
1408
+
1409
+ _Object containing the following properties:_
1410
+
1411
+ | Property | Description | Type |
1412
+ | :-------------------- | :----------------------------------------------------- | :------------------------------------------------------------ |
1413
+ | **`identifier`** (\*) | The unique identifier for the product option value. | [ProductOptionValueIdentifier](#productoptionvalueidentifier) |
1414
+ | **`label`** (\*) | The human-friendly label for the product option value. | `string` |
1415
+
1416
+ _(\*) Required._
1417
+
1418
+ ## ProductQueryById
1419
+
1420
+ _Object containing the following properties:_
1421
+
1422
+ | Property | Type |
1423
+ | :-------------------- | :-------------------------------------- |
1424
+ | **`identifier`** (\*) | [ProductIdentifier](#productidentifier) |
1425
+
1426
+ _(\*) Required._
1427
+
1428
+ ## ProductQueryBySKU
1429
+
1430
+ _Object containing the following properties:_
1431
+
1432
+ | Property | Type |
1433
+ | :----------------- | :---------------------------------------------------- |
1434
+ | **`variant`** (\*) | [ProductVariantIdentifier](#productvariantidentifier) |
1435
+
1436
+ _(\*) Required._
1437
+
1438
+ ## ProductQueryBySlug
1439
+
1440
+ _Object containing the following properties:_
1441
+
1442
+ | Property | Type |
1443
+ | :-------------- | :------- |
1444
+ | **`slug`** (\*) | `string` |
1445
+
1446
+ _(\*) Required._
1447
+
1448
+ ## ProductQueryVariants
1449
+
1450
+ _Object containing the following properties:_
1451
+
1452
+ | Property | Type |
1453
+ | :--------------------------- | :-------------------------------------- |
1454
+ | **`parentId`** (\*) | [ProductIdentifier](#productidentifier) |
1455
+ | **`paginationOptions`** (\*) | [PaginationOptions](#paginationoptions) |
1456
+
1457
+ _(\*) Required._
1458
+
1459
+ ## Product
1460
+
1461
+ A product is a wrapper around sellable items. It contains all the shared information for a set of SKUs. All products have at least one SKU, but can potentially have hundreds.
1462
+
1463
+ _Object containing the following properties:_
1464
+
1465
+ | Property | Description | Type | Default |
1466
+ | :-------------------------- | :-------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------- | :------ |
1467
+ | **`identifier`** (\*) | | [ProductIdentifier](#productidentifier) | |
1468
+ | **`name`** (\*) | The name of the product | `string` | |
1469
+ | **`slug`** (\*) | The URL-friendly identifier for the product | `string` | |
1470
+ | **`description`** (\*) | A brief description of the product | `string` | |
1471
+ | **`longDescription`** (\*) | A detailed description of the product | `string` | |
1472
+ | **`brand`** (\*) | The brand associated with the product | `string` | |
1473
+ | **`manufacturer`** (\*) | The manufacturer of the product | `string` | |
1474
+ | **`parentCategories`** (\*) | A list of parent categories the product belongs to | _Array of [CategoryIdentifier](#categoryidentifier) items_ | |
1475
+ | **`published`** (\*) | Indicates whether the product is published and visible to customers | `boolean` | |
1476
+ | **`sharedAttributes`** (\*) | A list of technical attributes associated with the product | _Array of [ProductAttribute](#productattribute) items_ | |
1477
+ | **`options`** (\*) | A list of options available for the product, such as size or color. Can be empty if product is single-sku | _Array of [ProductOption](#productoption) items_ | |
1478
+ | **`mainVariant`** (\*) | The primary SKU for the product | [ProductVariant](#productvariant) | |
1479
+ | `variants` | A list of all SKUs for the product. Can be empty or omitted if product is single-sku | _Array of [ProductVariant](#productvariant) items_ | `[]` |
1480
+
1481
+ _(\*) Required._
1482
+
1483
+ ## ProductSearchIdentifier
1484
+
1485
+ _Object containing the following properties:_
1486
+
1487
+ | Property | Description | Type |
1488
+ | :--------------------------- | :--------------------------------------------------------- | :------------------------------------------------------------- |
1489
+ | **`term`** (\*) | The search term used to find products. | `string` |
1490
+ | **`facets`** (\*) | The facets applied to filter the search results. | _Array of [FacetValueIdentifier](#facetvalueidentifier) items_ |
1491
+ | **`filters`** (\*) | Additional filters applied to the search results. | `Array<string>` |
1492
+ | **`paginationOptions`** (\*) | Pagination options for the search results. | [PaginationOptions](#paginationoptions) |
1493
+ | `categoryFilter` | An optional category filter applied to the search results. | [FacetValueIdentifier](#facetvalueidentifier) |
1494
+
1495
+ _(\*) Required._
1496
+
1497
+ ## ProductSearchQueryByTerm
1498
+
1499
+ _Object containing the following properties:_
1500
+
1501
+ | Property | Type |
1502
+ | :---------------- | :-------------------------------------------------- |
1503
+ | **`search`** (\*) | [ProductSearchIdentifier](#productsearchidentifier) |
1504
+
1505
+ _(\*) Required._
1506
+
1507
+ ## ProductSearchQueryCreateNavigationFilter
1508
+
1509
+ Payload to create a category navigation filter from a breadcrumb path.
1510
+
1511
+ _Object containing the following properties:_
1512
+
1513
+ | Property | Description | Type |
1514
+ | :---------------------- | :------------------------------------------------------------------------------------------- | :------------------------------------- |
1515
+ | **`categoryPath`** (\*) | An array representing the breadcrumb path to a category, from root to the specific category. | _Array of [Category](#category) items_ |
1516
+
1517
+ _(\*) Required._
1518
+
1519
+ ## ProductSearchResultFacet
1520
+
1521
+ _Object containing the following properties:_
1522
+
1523
+ | Property | Type |
1524
+ | :-------------------- | :------------------------------------------------------------------------------- |
1525
+ | **`identifier`** (\*) | [FacetIdentifier](#facetidentifier) |
1526
+ | **`name`** (\*) | `string` |
1527
+ | **`values`** (\*) | _Array of [ProductSearchResultFacetValue](#productsearchresultfacetvalue) items_ |
1528
+
1529
+ _(\*) Required._
1530
+
1531
+ ## ProductSearchResultFacetValue
1532
+
1533
+ _Object containing the following properties:_
1534
+
1535
+ | Property | Type |
1536
+ | :-------------------- | :-------------------------------------------- |
1537
+ | **`identifier`** (\*) | [FacetValueIdentifier](#facetvalueidentifier) |
1538
+ | **`name`** (\*) | `string` |
1539
+ | **`count`** (\*) | `number` |
1540
+ | **`active`** (\*) | `boolean` |
1541
+
1542
+ _(\*) Required._
1543
+
1544
+ ## ProductSearchResultItem
1545
+
1546
+ _Object containing the following properties:_
1547
+
1548
+ | Property | Description | Type |
1549
+ | :-------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------- |
1550
+ | **`identifier`** (\*) | | [ProductIdentifier](#productidentifier) |
1551
+ | **`name`** (\*) | | `string` |
1552
+ | **`slug`** (\*) | | `string` |
1553
+ | **`variants`** (\*) | A list of variants associated with the product in the search results. If exactly one is present, you can use add-to-cart directly from PLP. If none are present, you must direct to PDP. If mulitple are present, and no options are set, you must direct to PDP. If multiple are present, and they have options, you can render swatches on PLP and allow customer to flip between variants. | _Array of [ProductSearchResultItemVariant](#productsearchresultitemvariant) items_ |
1554
+
1555
+ _(\*) Required._
1556
+
1557
+ ## ProductSearchResultItemVariant
1558
+
1559
+ _Object containing the following properties:_
1560
+
1561
+ | Property | Description | Type |
1562
+ | :----------------- | :------------------------------------------------------------ | :---------------------------------------------------- |
1563
+ | **`variant`** (\*) | The specific variant of the product | [ProductVariantIdentifier](#productvariantidentifier) |
1564
+ | **`image`** (\*) | The image representing this variant in the search results | [Image](#image) |
1565
+ | `options` | The subset of options that can reasonably be applied on a PLP | [ProductVariantOption](#productvariantoption) |
1566
+
1567
+ _(\*) Required._
1568
+
1569
+ ## ProductSearchResult
1570
+
1571
+ _Object containing the following properties:_
1572
+
1573
+ | Property | Description | Type |
1574
+ | :-------------------- | :----------------------------------- | :--------------------------------------------------------------------- |
1575
+ | **`pageNumber`** (\*) | Current page number, starting from 1 | `number` (_≥1_) |
1576
+ | **`pageSize`** (\*) | Number of items per page | `number` (_≥1_) |
1577
+ | **`totalCount`** (\*) | Total number of items available | `number` (_≥0_) |
1578
+ | **`totalPages`** (\*) | Total number of pages available | `number` (_≥0_) |
1579
+ | **`items`** (\*) | | _Array of [ProductSearchResultItem](#productsearchresultitem) items_ |
1580
+ | **`identifier`** (\*) | | [ProductSearchIdentifier](#productsearchidentifier) |
1581
+ | **`facets`** (\*) | | _Array of [ProductSearchResultFacet](#productsearchresultfacet) items_ |
1582
+
1583
+ _(\*) Required._
1584
+
1585
+ ## ProductVariantIdentifier
1586
+
1587
+ _Object containing the following properties:_
1588
+
1589
+ | Property | Type |
1590
+ | :------------- | :------- |
1591
+ | **`sku`** (\*) | `string` |
1592
+
1593
+ _(\*) Required._
1594
+
1595
+ ## ProductVariantOption
1596
+
1597
+ _Object containing the following properties:_
1598
+
1599
+ | Property | Description | Type |
1600
+ | :-------------------- | :------------------------------------------- | :-------------------------------------------------- |
1601
+ | **`identifier`** (\*) | The unique identifier for the option. | [ProductOptionIdentifier](#productoptionidentifier) |
1602
+ | **`name`** (\*) | The name of the option, e.g., Size or Color. | `string` |
1603
+ | **`value`** (\*) | The unique identifier for the option value. | [ProductOptionValue](#productoptionvalue) |
1604
+
1605
+ _(\*) Required._
1606
+
1607
+ ## ProductVariant
1608
+
1609
+ _Object containing the following properties:_
1610
+
1611
+ | Property | Description | Type |
1612
+ | :-------------------- | :-------------------------------------------------------------- | :------------------------------------------------------------- |
1613
+ | **`identifier`** (\*) | The unique identifier for the variant. Often its SKU | [ProductVariantIdentifier](#productvariantidentifier) |
1614
+ | **`name`** (\*) | | `string` |
1615
+ | **`images`** (\*) | A list of images associated with the product variant | _Array of [Image](#image) items_ |
1616
+ | **`ean`** (\*) | The European Article Number identifier for the product variant | `string` |
1617
+ | **`gtin`** (\*) | The Global Trade Item Number identifier for the product variant | `string` |
1618
+ | **`upc`** (\*) | The Universal Product Code identifier for the product variant | `string` |
1619
+ | **`barcode`** (\*) | The barcode identifier for the product variant | `string` |
1620
+ | **`options`** (\*) | A list of option identifiers that define this variant | _Array of [ProductVariantOption](#productvariantoption) items_ |
1621
+
1622
+ _(\*) Required._
1623
+
1624
+ ## ProfileMutationAddShippingAddress
1625
+
1626
+ _Object containing the following properties:_
1627
+
1628
+ | Property | Type |
1629
+ | :-------------------- | :---------------------------------------- |
1630
+ | **`identifier`** (\*) | [IdentityIdentifier](#identityidentifier) |
1631
+ | **`address`** (\*) | [Address](#address) |
1632
+
1633
+ _(\*) Required._
1634
+
1635
+ ## ProfileMutationMakeShippingAddressDefault
1636
+
1637
+ _Object containing the following properties:_
1638
+
1639
+ | Property | Type |
1640
+ | :--------------------------- | :---------------------------------------- |
1641
+ | **`identifier`** (\*) | [IdentityIdentifier](#identityidentifier) |
1642
+ | **`addressIdentifier`** (\*) | [AddressIdentifier](#addressidentifier) |
1643
+
1644
+ _(\*) Required._
1645
+
1646
+ ## ProfileMutationRemoveShippingAddress
1647
+
1648
+ _Object containing the following properties:_
1649
+
1650
+ | Property | Type |
1651
+ | :--------------------------- | :---------------------------------------- |
1652
+ | **`identifier`** (\*) | [IdentityIdentifier](#identityidentifier) |
1653
+ | **`addressIdentifier`** (\*) | [AddressIdentifier](#addressidentifier) |
1654
+
1655
+ _(\*) Required._
1656
+
1657
+ ## ProfileMutationSetBillingAddress
1658
+
1659
+ _Object containing the following properties:_
1660
+
1661
+ | Property | Type |
1662
+ | :-------------------- | :---------------------------------------- |
1663
+ | **`identifier`** (\*) | [IdentityIdentifier](#identityidentifier) |
1664
+ | **`address`** (\*) | [Address](#address) |
1665
+
1666
+ _(\*) Required._
1667
+
1668
+ ## ProfileMutationUpdate
1669
+
1670
+ _Object containing the following properties:_
1671
+
1672
+ | Property | Description | Type |
1673
+ | :-------------------- | :------------------------------------ | :---------------------------------------- |
1674
+ | **`identifier`** (\*) | | [IdentityIdentifier](#identityidentifier) |
1675
+ | **`email`** (\*) | The main contact email of the profile | `string` (_email_) |
1676
+ | **`phone`** (\*) | The main phone number of the profile | `string` |
1677
+
1678
+ _(\*) Required._
1679
+
1680
+ ## ProfileMutationUpdateShippingAddress
1681
+
1682
+ _Object containing the following properties:_
1683
+
1684
+ | Property | Type |
1685
+ | :-------------------- | :---------------------------------------- |
1686
+ | **`identifier`** (\*) | [IdentityIdentifier](#identityidentifier) |
1687
+ | **`address`** (\*) | [Address](#address) |
1688
+
1689
+ _(\*) Required._
1690
+
1691
+ ## ProfileQueryById
1692
+
1693
+ _Object containing the following properties:_
1694
+
1695
+ | Property | Type |
1696
+ | :-------------------- | :---------------------------------------- |
1697
+ | **`identifier`** (\*) | [IdentityIdentifier](#identityidentifier) |
1698
+
1699
+ _(\*) Required._
1700
+
1701
+ ## Profile
1702
+
1703
+ _Object containing the following properties:_
1704
+
1705
+ | Property | Type | Default |
1706
+ | :--------------------------- | :---------------------------------------- | :------ |
1707
+ | **`identifier`** (\*) | [IdentityIdentifier](#identityidentifier) | |
1708
+ | **`email`** (\*) | `string` (_email_) | |
1709
+ | **`phone`** (\*) | `string` | |
1710
+ | **`emailVerified`** (\*) | `boolean` | |
1711
+ | **`phoneVerified`** (\*) | `boolean` | |
1712
+ | **`createdAt`** (\*) | `string` | |
1713
+ | **`updatedAt`** (\*) | `string` | |
1714
+ | `shippingAddress` | [Address](#address) | |
1715
+ | `billingAddress` | [Address](#address) | |
1716
+ | `alternateShippingAddresses` | _Array of [Address](#address) items_ | `[]` |
1717
+
1718
+ _(\*) Required._
1719
+
1720
+ ## RegisteredIdentity
1721
+
1722
+ _Object containing the following properties:_
1723
+
1724
+ | Property | Type |
1725
+ | :-------------- | :---------------------------------------- |
1726
+ | **`id`** (\*) | [IdentityIdentifier](#identityidentifier) |
1727
+ | **`type`** (\*) | `'Registered'` |
1728
+
1729
+ _(\*) Required._
1730
+
1731
+ ## RequestContext
1732
+
1733
+ _Object containing the following properties:_
1734
+
1735
+ | Property | Description | Type | Default |
1736
+ | :---------------- | :------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------- | :------ |
1737
+ | `session` | Read/Write session storage. Caller is responsible for persisting any changes. Providers will prefix own values | [Session](#session) | |
1738
+ | `languageContext` | ReadOnly. The language and locale context for the current request. | [LanguageContext](#languagecontext) | |
1739
+ | `storeIdentifier` | ReadOnly. The identifier of the current web store making the request. | [WebStoreIdentifier](#webstoreidentifier) | |
1740
+ | `taxJurisdiction` | ReadOnly. The tax jurisdiction for the current request, typically derived from the store location or carts billing address | [TaxJurisdiction](#taxjurisdiction) | |
1741
+ | `correlationId` | A unique identifier for the request, can be used for tracing and logging purposes. | `string` | `''` |
1742
+ | `isBot` | Indicates if the request is made by a bot or crawler. | `boolean` | `false` |
1743
+ | `clientIp` | The IP address of the client making the request, if available. Mostly for logging purposes | `string` | `''` |
1744
+ | `userAgent` | The user agent string of the client making the request, if available. | `string` | `''` |
1745
+ | `referrer` | The referrer URL, if available. | `string` | `''` |
1746
+
1747
+ _All properties are optional._
1748
+
1749
+ ## Session
1750
+
1751
+ _Object record with dynamic keys:_
1752
+
1753
+ - _keys of type_ `string`
1754
+ - _values of type_ `any`
1755
+
1756
+ ## ShippingInstruction
1757
+
1758
+ _Object containing the following properties:_
1759
+
1760
+ | Property | Description | Type |
1761
+ | :-------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :---------------------------------------------------- |
1762
+ | **`shippingMethod`** (\*) | | [ShippingMethodIdentifier](#shippingmethodidentifier) |
1763
+ | **`pickupPoint`** (\*) | An optional pickup point for the shipping method. This could be a physical store, a locker, or similar. If not set, it means home delivery to the shipping address. | `string` |
1764
+ | **`instructions`** (\*) | Optional instructions for the shipping. This could be delivery instructions, or similar. | `string` |
1765
+ | **`consentForUnattendedDelivery`** (\*) | Indicates if the customer has given consent for unattended delivery, if applicable. | `boolean` |
1766
+
1767
+ _(\*) Required._
1768
+
1769
+ ## ShippingMethodIdentifier
1770
+
1771
+ _Object containing the following properties:_
1772
+
1773
+ | Property | Type |
1774
+ | :------------- | :------- |
1775
+ | **`key`** (\*) | `string` |
1776
+
1777
+ _(\*) Required._
1778
+
1779
+ ## ShippingMethod
1780
+
1781
+ _Object containing the following properties:_
1782
+
1783
+ | Property | Type |
1784
+ | :---------------------- | :---------------------------------------------------- |
1785
+ | **`identifier`** (\*) | [ShippingMethodIdentifier](#shippingmethodidentifier) |
1786
+ | **`name`** (\*) | `string` |
1787
+ | **`description`** (\*) | `string` |
1788
+ | `logo` | [Image](#image) |
1789
+ | **`price`** (\*) | [MonetaryAmount](#monetaryamount) |
1790
+ | **`deliveryTime`** (\*) | `string` |
1791
+ | `carrier` | `string` |
1792
+
1793
+ _(\*) Required._
1794
+
1795
+ ## StoreIdentifier
1796
+
1797
+ _Object containing the following properties:_
1798
+
1799
+ | Property | Type |
1800
+ | :------------- | :------- |
1801
+ | **`key`** (\*) | `string` |
1802
+
1803
+ _(\*) Required._
1804
+
1805
+ ## StoreQueryByProximity
1806
+
1807
+ _Object containing the following properties:_
1808
+
1809
+ | Property | Type |
1810
+ | :------------------- | :------- |
1811
+ | **`longitude`** (\*) | `number` |
1812
+ | **`latitude`** (\*) | `number` |
1813
+ | **`distance`** (\*) | `number` |
1814
+ | **`limit`** (\*) | `number` |
1815
+
1816
+ _(\*) Required._
1817
+
1818
+ ## Store
1819
+
1820
+ _Object containing the following properties:_
1821
+
1822
+ | Property | Type |
1823
+ | :--------------------------- | :---------------------------------------------------------- |
1824
+ | **`identifier`** (\*) | [StoreIdentifier](#storeidentifier) |
1825
+ | **`name`** (\*) | `string` |
1826
+ | **`fulfillmentCenter`** (\*) | [FulfillmentCenterIdentifier](#fulfillmentcenteridentifier) |
1827
+
1828
+ _(\*) Required._
1829
+
1830
+ ## TaxJurisdiction
1831
+
1832
+ _Object containing the following properties:_
1833
+
1834
+ | Property | Type | Default |
1835
+ | :------------ | :------- | :------ |
1836
+ | `countryCode` | `string` | `'US'` |
1837
+ | `stateCode` | `string` | `''` |
1838
+ | `countyCode` | `string` | `''` |
1839
+ | `cityCode` | `string` | `''` |
1840
+
1841
+ _All properties are optional._
1842
+
1843
+ ## TieredPrice
1844
+
1845
+ _Object containing the following properties:_
1846
+
1847
+ | Property | Description | Type |
1848
+ | :------------------------- | :----------------------------------------------------------------- | :-------------------------------- |
1849
+ | **`minimumQuantity`** (\*) | The minimum quantity required to be eligible for the tiered price. | `number` |
1850
+ | **`price`** (\*) | The monetary amount for the tiered price. | [MonetaryAmount](#monetaryamount) |
1851
+
1852
+ _(\*) Required._
1853
+
1854
+ ## WebStoreIdentifier
1855
+
1856
+ _Object containing the following properties:_
1857
+
1858
+ | Property | Type |
1859
+ | :------------- | :------- |
1860
+ | **`key`** (\*) | `string` |
1861
+
1862
+ _(\*) Required._