@asstio-dev/storefront 0.6.0 → 0.9.2
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.
- package/README.md +187 -4
- package/dist/checkout/browser.d.ts +76 -0
- package/dist/checkout/browser.js +444 -0
- package/dist/checkout/controllers.d.ts +55 -0
- package/dist/checkout/controllers.js +75 -0
- package/dist/checkout/server.d.ts +37 -0
- package/dist/checkout/server.js +68 -0
- package/dist/checkout/types.d.ts +42 -0
- package/dist/checkout/types.js +17 -0
- package/dist/index.d.ts +5 -1
- package/dist/index.js +5 -1
- package/dist/media.d.ts +80 -0
- package/dist/media.js +142 -0
- package/dist/schema.d.ts +735 -25
- package/package.json +4 -2
- package/src/schema.d.ts +735 -25
package/dist/schema.d.ts
CHANGED
|
@@ -85,6 +85,54 @@ export interface paths {
|
|
|
85
85
|
patch?: never;
|
|
86
86
|
trace?: never;
|
|
87
87
|
};
|
|
88
|
+
"/v1/checkout": {
|
|
89
|
+
parameters: {
|
|
90
|
+
query?: never;
|
|
91
|
+
header?: never;
|
|
92
|
+
path?: never;
|
|
93
|
+
cookie?: never;
|
|
94
|
+
};
|
|
95
|
+
get?: never;
|
|
96
|
+
put?: never;
|
|
97
|
+
post: operations["StartCheckout"];
|
|
98
|
+
delete?: never;
|
|
99
|
+
options?: never;
|
|
100
|
+
head?: never;
|
|
101
|
+
patch?: never;
|
|
102
|
+
trace?: never;
|
|
103
|
+
};
|
|
104
|
+
"/v1/checkout/{attemptId}": {
|
|
105
|
+
parameters: {
|
|
106
|
+
query?: never;
|
|
107
|
+
header?: never;
|
|
108
|
+
path?: never;
|
|
109
|
+
cookie?: never;
|
|
110
|
+
};
|
|
111
|
+
get: operations["GetCheckout"];
|
|
112
|
+
put?: never;
|
|
113
|
+
post?: never;
|
|
114
|
+
delete?: never;
|
|
115
|
+
options?: never;
|
|
116
|
+
head?: never;
|
|
117
|
+
patch?: never;
|
|
118
|
+
trace?: never;
|
|
119
|
+
};
|
|
120
|
+
"/v1/checkout/{attemptId}/complete": {
|
|
121
|
+
parameters: {
|
|
122
|
+
query?: never;
|
|
123
|
+
header?: never;
|
|
124
|
+
path?: never;
|
|
125
|
+
cookie?: never;
|
|
126
|
+
};
|
|
127
|
+
get?: never;
|
|
128
|
+
put?: never;
|
|
129
|
+
post: operations["CompleteCheckout"];
|
|
130
|
+
delete?: never;
|
|
131
|
+
options?: never;
|
|
132
|
+
head?: never;
|
|
133
|
+
patch?: never;
|
|
134
|
+
trace?: never;
|
|
135
|
+
};
|
|
88
136
|
"/v1/collections": {
|
|
89
137
|
parameters: {
|
|
90
138
|
query?: never;
|
|
@@ -119,6 +167,38 @@ export interface paths {
|
|
|
119
167
|
patch?: never;
|
|
120
168
|
trace?: never;
|
|
121
169
|
};
|
|
170
|
+
"/v1/consumers/erasure": {
|
|
171
|
+
parameters: {
|
|
172
|
+
query?: never;
|
|
173
|
+
header?: never;
|
|
174
|
+
path?: never;
|
|
175
|
+
cookie?: never;
|
|
176
|
+
};
|
|
177
|
+
get?: never;
|
|
178
|
+
put?: never;
|
|
179
|
+
post: operations["RequestErasure"];
|
|
180
|
+
delete?: never;
|
|
181
|
+
options?: never;
|
|
182
|
+
head?: never;
|
|
183
|
+
patch?: never;
|
|
184
|
+
trace?: never;
|
|
185
|
+
};
|
|
186
|
+
"/v1/orders/{orderId}": {
|
|
187
|
+
parameters: {
|
|
188
|
+
query?: never;
|
|
189
|
+
header?: never;
|
|
190
|
+
path?: never;
|
|
191
|
+
cookie?: never;
|
|
192
|
+
};
|
|
193
|
+
get: operations["GetOrder"];
|
|
194
|
+
put?: never;
|
|
195
|
+
post?: never;
|
|
196
|
+
delete?: never;
|
|
197
|
+
options?: never;
|
|
198
|
+
head?: never;
|
|
199
|
+
patch?: never;
|
|
200
|
+
trace?: never;
|
|
201
|
+
};
|
|
122
202
|
"/v1/products": {
|
|
123
203
|
parameters: {
|
|
124
204
|
query?: never;
|
|
@@ -264,6 +344,15 @@ export interface components {
|
|
|
264
344
|
quantity: number | string;
|
|
265
345
|
sku: string;
|
|
266
346
|
};
|
|
347
|
+
AddressDto: {
|
|
348
|
+
city: null | string;
|
|
349
|
+
co: null | string;
|
|
350
|
+
country: string;
|
|
351
|
+
name: null | string;
|
|
352
|
+
postalCode: null | string;
|
|
353
|
+
street: null | string;
|
|
354
|
+
street2: null | string;
|
|
355
|
+
};
|
|
267
356
|
AppliedFilterDto: {
|
|
268
357
|
facet: string;
|
|
269
358
|
label: string;
|
|
@@ -335,6 +424,88 @@ export interface components {
|
|
|
335
424
|
name: string;
|
|
336
425
|
pathNames: string[];
|
|
337
426
|
};
|
|
427
|
+
CheckoutCartDto: {
|
|
428
|
+
currency: string;
|
|
429
|
+
grandTotalInc: string;
|
|
430
|
+
lines: components["schemas"]["CheckoutCartLineDto"][];
|
|
431
|
+
subtotalInc: string;
|
|
432
|
+
/** Format: int32 */
|
|
433
|
+
version: number | string;
|
|
434
|
+
};
|
|
435
|
+
CheckoutCartLineDto: {
|
|
436
|
+
image: null | components["schemas"]["MediaDescriptorDto"];
|
|
437
|
+
lineTotalInc: string;
|
|
438
|
+
name: string;
|
|
439
|
+
options: {
|
|
440
|
+
[key: string]: string;
|
|
441
|
+
};
|
|
442
|
+
productId: string;
|
|
443
|
+
/** Format: int32 */
|
|
444
|
+
quantity: number | string;
|
|
445
|
+
sku: string;
|
|
446
|
+
unitPriceInc: string;
|
|
447
|
+
variantId: string;
|
|
448
|
+
vatRate: string;
|
|
449
|
+
};
|
|
450
|
+
CheckoutDto: {
|
|
451
|
+
attemptId: string;
|
|
452
|
+
cart: components["schemas"]["CheckoutCartDto"];
|
|
453
|
+
/** Format: int32 */
|
|
454
|
+
cartVersion: number | string;
|
|
455
|
+
changed: boolean;
|
|
456
|
+
/** Format: date-time */
|
|
457
|
+
expiresAt: string;
|
|
458
|
+
/** Format: int32 */
|
|
459
|
+
expiresInSeconds: number | string;
|
|
460
|
+
family: string;
|
|
461
|
+
option: string;
|
|
462
|
+
order: null | components["schemas"]["CheckoutOrderRefDto"];
|
|
463
|
+
payment: null | components["schemas"]["CheckoutPaymentDto"];
|
|
464
|
+
provider: string;
|
|
465
|
+
status: string;
|
|
466
|
+
test: boolean;
|
|
467
|
+
warnings: components["schemas"]["WarningDto"][];
|
|
468
|
+
widget: null | components["schemas"]["CheckoutWidgetDto"];
|
|
469
|
+
};
|
|
470
|
+
CheckoutOptionDto: {
|
|
471
|
+
family: string;
|
|
472
|
+
key: string;
|
|
473
|
+
label: {
|
|
474
|
+
[key: string]: string;
|
|
475
|
+
};
|
|
476
|
+
provider: string;
|
|
477
|
+
test: boolean;
|
|
478
|
+
};
|
|
479
|
+
CheckoutOrderRefDto: {
|
|
480
|
+
accessToken: null | string;
|
|
481
|
+
id: string;
|
|
482
|
+
orderNumber: null | string;
|
|
483
|
+
/** Format: date-time */
|
|
484
|
+
placedAt: string;
|
|
485
|
+
reference: string;
|
|
486
|
+
};
|
|
487
|
+
CheckoutPaymentDto: {
|
|
488
|
+
clientSecret: null | string;
|
|
489
|
+
kind: string;
|
|
490
|
+
url: null | string;
|
|
491
|
+
};
|
|
492
|
+
CheckoutStatusDto: {
|
|
493
|
+
attemptId: string;
|
|
494
|
+
order: null | components["schemas"]["CheckoutOrderRefDto"];
|
|
495
|
+
paymentStatus: null | string;
|
|
496
|
+
status: string;
|
|
497
|
+
widget: null | components["schemas"]["CheckoutWidgetDto"];
|
|
498
|
+
};
|
|
499
|
+
CheckoutWidgetDto: {
|
|
500
|
+
attributes: null | {
|
|
501
|
+
[key: string]: string;
|
|
502
|
+
};
|
|
503
|
+
controller: string;
|
|
504
|
+
html: null | string;
|
|
505
|
+
kind: string;
|
|
506
|
+
scriptUrl: null | string;
|
|
507
|
+
token: null | string;
|
|
508
|
+
};
|
|
338
509
|
CollectionCrumbDto: {
|
|
339
510
|
id: string;
|
|
340
511
|
name: string;
|
|
@@ -369,6 +540,9 @@ export interface components {
|
|
|
369
540
|
html: string;
|
|
370
541
|
text: string;
|
|
371
542
|
};
|
|
543
|
+
ErasureRequest: {
|
|
544
|
+
email: string;
|
|
545
|
+
};
|
|
372
546
|
FacetDto: {
|
|
373
547
|
collapsed: boolean;
|
|
374
548
|
help: null | string;
|
|
@@ -415,7 +589,13 @@ export interface components {
|
|
|
415
589
|
total: number | string;
|
|
416
590
|
warnings: components["schemas"]["WarningDto"][];
|
|
417
591
|
};
|
|
592
|
+
MarketCheckoutDto: {
|
|
593
|
+
available: boolean;
|
|
594
|
+
defaultOption: null | string;
|
|
595
|
+
options: components["schemas"]["CheckoutOptionDto"][];
|
|
596
|
+
};
|
|
418
597
|
MarketDto: {
|
|
598
|
+
checkout: components["schemas"]["MarketCheckoutDto"];
|
|
419
599
|
code: string;
|
|
420
600
|
country: string;
|
|
421
601
|
currency: string;
|
|
@@ -441,6 +621,7 @@ export interface components {
|
|
|
441
621
|
/** Format: int32 */
|
|
442
622
|
duration: number | null | string;
|
|
443
623
|
filename: null | string;
|
|
624
|
+
focal: null | components["schemas"]["MediaFocalDto"];
|
|
444
625
|
formats: string[];
|
|
445
626
|
/** Format: int32 */
|
|
446
627
|
h: number | null | string;
|
|
@@ -454,6 +635,7 @@ export interface components {
|
|
|
454
635
|
/** Format: int32 */
|
|
455
636
|
recipe: number | string;
|
|
456
637
|
role: string;
|
|
638
|
+
showWhole: boolean;
|
|
457
639
|
variants: components["schemas"]["MediaVideoVariantDto"][] | null;
|
|
458
640
|
view: null | string;
|
|
459
641
|
/** Format: int32 */
|
|
@@ -462,8 +644,26 @@ export interface components {
|
|
|
462
644
|
};
|
|
463
645
|
MediaDto: {
|
|
464
646
|
baseUrl: string;
|
|
647
|
+
formats: null | {
|
|
648
|
+
[key: string]: components["schemas"]["MediaFormatDto"];
|
|
649
|
+
};
|
|
465
650
|
templates: components["schemas"]["MediaTemplatesDto"];
|
|
466
651
|
};
|
|
652
|
+
MediaFocalDto: {
|
|
653
|
+
/** Format: double */
|
|
654
|
+
x: number | string;
|
|
655
|
+
/** Format: double */
|
|
656
|
+
y: number | string;
|
|
657
|
+
};
|
|
658
|
+
MediaFormatDto: {
|
|
659
|
+
aspect: null | string;
|
|
660
|
+
background: null | {
|
|
661
|
+
[key: string]: string;
|
|
662
|
+
};
|
|
663
|
+
fit: string;
|
|
664
|
+
/** Format: double */
|
|
665
|
+
padding: number | string;
|
|
666
|
+
};
|
|
467
667
|
MediaPosterDto: {
|
|
468
668
|
formats: string[];
|
|
469
669
|
widths: (number | string)[];
|
|
@@ -488,6 +688,49 @@ export interface components {
|
|
|
488
688
|
name: string;
|
|
489
689
|
values: string[];
|
|
490
690
|
};
|
|
691
|
+
OrderDto: {
|
|
692
|
+
billingAddress: components["schemas"]["AddressDto"];
|
|
693
|
+
currency: string;
|
|
694
|
+
deliveryAddress: components["schemas"]["AddressDto"];
|
|
695
|
+
email: string;
|
|
696
|
+
id: string;
|
|
697
|
+
lines: components["schemas"]["OrderLineDto"][];
|
|
698
|
+
market: string;
|
|
699
|
+
orderNumber: null | string;
|
|
700
|
+
/** Format: date-time */
|
|
701
|
+
placedAt: string;
|
|
702
|
+
reference: string;
|
|
703
|
+
status: components["schemas"]["OrderStatusDto"];
|
|
704
|
+
test: boolean;
|
|
705
|
+
totals: components["schemas"]["OrderTotalsDto"];
|
|
706
|
+
tracking: components["schemas"]["TrackingDto"][];
|
|
707
|
+
};
|
|
708
|
+
OrderLineDto: {
|
|
709
|
+
id: string;
|
|
710
|
+
lineTotalInc: string;
|
|
711
|
+
name: string;
|
|
712
|
+
options: {
|
|
713
|
+
[key: string]: string;
|
|
714
|
+
};
|
|
715
|
+
productId: null | string;
|
|
716
|
+
/** Format: int32 */
|
|
717
|
+
quantity: number | string;
|
|
718
|
+
sku: string;
|
|
719
|
+
type: string;
|
|
720
|
+
unitPriceInc: string;
|
|
721
|
+
variantId: null | string;
|
|
722
|
+
vatRate: string;
|
|
723
|
+
};
|
|
724
|
+
OrderStatusDto: {
|
|
725
|
+
fulfilment: string;
|
|
726
|
+
order: string;
|
|
727
|
+
payment: string;
|
|
728
|
+
};
|
|
729
|
+
OrderTotalsDto: {
|
|
730
|
+
customerPayable: null | string;
|
|
731
|
+
gross: string;
|
|
732
|
+
vat: components["schemas"]["VatAmountDto"][];
|
|
733
|
+
};
|
|
491
734
|
PriceDto: {
|
|
492
735
|
amount: string;
|
|
493
736
|
compareAt: null | string;
|
|
@@ -604,6 +847,10 @@ export interface components {
|
|
|
604
847
|
key: string;
|
|
605
848
|
label: string;
|
|
606
849
|
};
|
|
850
|
+
StartCheckoutRequest: {
|
|
851
|
+
option: null | string;
|
|
852
|
+
returnOrigin: null | string;
|
|
853
|
+
};
|
|
607
854
|
/**
|
|
608
855
|
* Problem
|
|
609
856
|
* @description RFC 9457 problem document. Branch on `code`: it is stable, unlike `title` and `detail`.
|
|
@@ -648,6 +895,11 @@ export interface components {
|
|
|
648
895
|
color: null | string;
|
|
649
896
|
image: null | components["schemas"]["MediaDescriptorDto"];
|
|
650
897
|
};
|
|
898
|
+
TrackingDto: {
|
|
899
|
+
carrier: string;
|
|
900
|
+
number: string;
|
|
901
|
+
url: null | string;
|
|
902
|
+
};
|
|
651
903
|
UpdateCartLineRequest: {
|
|
652
904
|
/** Format: int32 */
|
|
653
905
|
quantity: number | string;
|
|
@@ -687,6 +939,10 @@ export interface components {
|
|
|
687
939
|
/** Format: int64 */
|
|
688
940
|
total: number | string;
|
|
689
941
|
};
|
|
942
|
+
VatAmountDto: {
|
|
943
|
+
amount: string;
|
|
944
|
+
rate: string;
|
|
945
|
+
};
|
|
690
946
|
WarningDto: {
|
|
691
947
|
code: string;
|
|
692
948
|
lineId?: null | string;
|
|
@@ -1386,7 +1642,7 @@ export interface operations {
|
|
|
1386
1642
|
};
|
|
1387
1643
|
};
|
|
1388
1644
|
};
|
|
1389
|
-
|
|
1645
|
+
StartCheckout: {
|
|
1390
1646
|
parameters: {
|
|
1391
1647
|
query?: never;
|
|
1392
1648
|
header: {
|
|
@@ -1396,11 +1652,17 @@ export interface operations {
|
|
|
1396
1652
|
"X-Market"?: string;
|
|
1397
1653
|
/** @description BCP-47 language tag. Omit to use the market's language. */
|
|
1398
1654
|
"Accept-Language"?: string;
|
|
1655
|
+
/** @description The cart's bearer token. The checkout works on this cart. */
|
|
1656
|
+
"X-Cart-Token": string;
|
|
1399
1657
|
};
|
|
1400
1658
|
path?: never;
|
|
1401
1659
|
cookie?: never;
|
|
1402
1660
|
};
|
|
1403
|
-
requestBody?:
|
|
1661
|
+
requestBody?: {
|
|
1662
|
+
content: {
|
|
1663
|
+
"application/json": null | components["schemas"]["StartCheckoutRequest"];
|
|
1664
|
+
};
|
|
1665
|
+
};
|
|
1404
1666
|
responses: {
|
|
1405
1667
|
/** @description OK */
|
|
1406
1668
|
200: {
|
|
@@ -1408,10 +1670,10 @@ export interface operations {
|
|
|
1408
1670
|
[name: string]: unknown;
|
|
1409
1671
|
};
|
|
1410
1672
|
content: {
|
|
1411
|
-
"application/json": components["schemas"]["
|
|
1673
|
+
"application/json": components["schemas"]["CheckoutDto"];
|
|
1412
1674
|
};
|
|
1413
1675
|
};
|
|
1414
|
-
/** @description problem+json.
|
|
1676
|
+
/** @description problem+json. NOT_FOUND (X-Cart-Token missing), OPTION_NOT_AVAILABLE, or ORIGIN_NOT_ALLOWED. */
|
|
1415
1677
|
400: {
|
|
1416
1678
|
headers: {
|
|
1417
1679
|
[name: string]: unknown;
|
|
@@ -1429,7 +1691,7 @@ export interface operations {
|
|
|
1429
1691
|
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1430
1692
|
};
|
|
1431
1693
|
};
|
|
1432
|
-
/** @description problem+json.
|
|
1694
|
+
/** @description problem+json. CHECKOUT_PREVIEW_KEY: a preview key cannot check out; or SECRET_KEY_FROM_BROWSER. */
|
|
1433
1695
|
403: {
|
|
1434
1696
|
headers: {
|
|
1435
1697
|
[name: string]: unknown;
|
|
@@ -1447,6 +1709,24 @@ export interface operations {
|
|
|
1447
1709
|
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1448
1710
|
};
|
|
1449
1711
|
};
|
|
1712
|
+
/** @description problem+json. CART_EMPTY; CHECKOUT_CART_CHANGED (the corrected cart is in `cart`); CHECKOUT_IN_PROGRESS (Retry-After); CHECKOUT_MARKET_MISMATCH. */
|
|
1713
|
+
409: {
|
|
1714
|
+
headers: {
|
|
1715
|
+
[name: string]: unknown;
|
|
1716
|
+
};
|
|
1717
|
+
content: {
|
|
1718
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1719
|
+
};
|
|
1720
|
+
};
|
|
1721
|
+
/** @description problem+json. CART_EXPIRED. */
|
|
1722
|
+
410: {
|
|
1723
|
+
headers: {
|
|
1724
|
+
[name: string]: unknown;
|
|
1725
|
+
};
|
|
1726
|
+
content: {
|
|
1727
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1728
|
+
};
|
|
1729
|
+
};
|
|
1450
1730
|
/** @description problem+json. RATE_LIMITED; retryAfterSeconds and the Retry-After header say how long to wait. */
|
|
1451
1731
|
429: {
|
|
1452
1732
|
headers: {
|
|
@@ -1456,7 +1736,16 @@ export interface operations {
|
|
|
1456
1736
|
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1457
1737
|
};
|
|
1458
1738
|
};
|
|
1459
|
-
/** @description problem+json.
|
|
1739
|
+
/** @description problem+json. CHECKOUT_PROVIDER_REJECTED. */
|
|
1740
|
+
502: {
|
|
1741
|
+
headers: {
|
|
1742
|
+
[name: string]: unknown;
|
|
1743
|
+
};
|
|
1744
|
+
content: {
|
|
1745
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1746
|
+
};
|
|
1747
|
+
};
|
|
1748
|
+
/** @description problem+json. CHECKOUT_UNAVAILABLE or CHECKOUT_PROVIDER_UNAVAILABLE (Retry-After); SITE_REGISTRY_WARMING. */
|
|
1460
1749
|
503: {
|
|
1461
1750
|
headers: {
|
|
1462
1751
|
[name: string]: unknown;
|
|
@@ -1467,22 +1756,9 @@ export interface operations {
|
|
|
1467
1756
|
};
|
|
1468
1757
|
};
|
|
1469
1758
|
};
|
|
1470
|
-
|
|
1759
|
+
GetCheckout: {
|
|
1471
1760
|
parameters: {
|
|
1472
|
-
query?:
|
|
1473
|
-
/** @description Free-text search. Omit to browse rather than search. */
|
|
1474
|
-
q?: string;
|
|
1475
|
-
/** @description 1-based page. page × pageSize must not exceed 10000 (default pageSize 24, max 100). */
|
|
1476
|
-
page?: number;
|
|
1477
|
-
/** @description Items per page, 1–100. Out of range is a 400 with code INVALID_PAGE. */
|
|
1478
|
-
pageSize?: number;
|
|
1479
|
-
/** @description Sort key. An unknown one is not refused: it falls back to relevance with a SORT_UNKNOWN warning, because it usually comes from a stale bookmark. */
|
|
1480
|
-
sort?: "name_asc" | "newest" | "price_asc" | "price_desc" | "relevance";
|
|
1481
|
-
/** @description Facet selection, sent as filter[key]=value. Several values for one facet are comma-separated; price is "min-max" and a boolean facet is "true". An unknown key is dropped with a FILTER_IGNORED warning. */
|
|
1482
|
-
filter?: {
|
|
1483
|
-
[key: string]: string;
|
|
1484
|
-
};
|
|
1485
|
-
};
|
|
1761
|
+
query?: never;
|
|
1486
1762
|
header: {
|
|
1487
1763
|
/** @description Publishable, preview or secret site key. Required on every request; secret keys are server-side only. */
|
|
1488
1764
|
"X-Site-Key": string;
|
|
@@ -1490,9 +1766,11 @@ export interface operations {
|
|
|
1490
1766
|
"X-Market"?: string;
|
|
1491
1767
|
/** @description BCP-47 language tag. Omit to use the market's language. */
|
|
1492
1768
|
"Accept-Language"?: string;
|
|
1769
|
+
/** @description The cart's bearer token. The checkout works on this cart. */
|
|
1770
|
+
"X-Cart-Token": string;
|
|
1493
1771
|
};
|
|
1494
1772
|
path: {
|
|
1495
|
-
|
|
1773
|
+
attemptId: string;
|
|
1496
1774
|
};
|
|
1497
1775
|
cookie?: never;
|
|
1498
1776
|
};
|
|
@@ -1504,10 +1782,10 @@ export interface operations {
|
|
|
1504
1782
|
[name: string]: unknown;
|
|
1505
1783
|
};
|
|
1506
1784
|
content: {
|
|
1507
|
-
"application/json": components["schemas"]["
|
|
1785
|
+
"application/json": components["schemas"]["CheckoutStatusDto"];
|
|
1508
1786
|
};
|
|
1509
1787
|
};
|
|
1510
|
-
/** @description problem+json.
|
|
1788
|
+
/** @description problem+json. NOT_FOUND (X-Cart-Token missing). */
|
|
1511
1789
|
400: {
|
|
1512
1790
|
headers: {
|
|
1513
1791
|
[name: string]: unknown;
|
|
@@ -1534,7 +1812,7 @@ export interface operations {
|
|
|
1534
1812
|
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1535
1813
|
};
|
|
1536
1814
|
};
|
|
1537
|
-
/** @description problem+json.
|
|
1815
|
+
/** @description problem+json. CHECKOUT_NOT_FOUND: no such attempt for this site and cart; or SITE_INACTIVE. */
|
|
1538
1816
|
404: {
|
|
1539
1817
|
headers: {
|
|
1540
1818
|
[name: string]: unknown;
|
|
@@ -1563,6 +1841,438 @@ export interface operations {
|
|
|
1563
1841
|
};
|
|
1564
1842
|
};
|
|
1565
1843
|
};
|
|
1844
|
+
CompleteCheckout: {
|
|
1845
|
+
parameters: {
|
|
1846
|
+
query?: never;
|
|
1847
|
+
header: {
|
|
1848
|
+
/** @description Publishable, preview or secret site key. Required on every request; secret keys are server-side only. */
|
|
1849
|
+
"X-Site-Key": string;
|
|
1850
|
+
/** @description Market code (e.g. "se"). Omit for the site's default market. */
|
|
1851
|
+
"X-Market"?: string;
|
|
1852
|
+
/** @description BCP-47 language tag. Omit to use the market's language. */
|
|
1853
|
+
"Accept-Language"?: string;
|
|
1854
|
+
/** @description Optional. When it names the attempt's cart, the answer carries the order's access token (complete) or opens the order (orders). */
|
|
1855
|
+
"X-Cart-Token"?: string;
|
|
1856
|
+
};
|
|
1857
|
+
path: {
|
|
1858
|
+
attemptId: string;
|
|
1859
|
+
};
|
|
1860
|
+
cookie?: never;
|
|
1861
|
+
};
|
|
1862
|
+
requestBody?: never;
|
|
1863
|
+
responses: {
|
|
1864
|
+
/** @description OK */
|
|
1865
|
+
200: {
|
|
1866
|
+
headers: {
|
|
1867
|
+
[name: string]: unknown;
|
|
1868
|
+
};
|
|
1869
|
+
content: {
|
|
1870
|
+
"application/json": components["schemas"]["CheckoutStatusDto"];
|
|
1871
|
+
};
|
|
1872
|
+
};
|
|
1873
|
+
/** @description problem+json. MARKET_UNKNOWN (no such market on this site) or INVALID_PAGE. */
|
|
1874
|
+
400: {
|
|
1875
|
+
headers: {
|
|
1876
|
+
[name: string]: unknown;
|
|
1877
|
+
};
|
|
1878
|
+
content: {
|
|
1879
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1880
|
+
};
|
|
1881
|
+
};
|
|
1882
|
+
/** @description problem+json. SITE_KEY_MISSING or SITE_KEY_INVALID. */
|
|
1883
|
+
401: {
|
|
1884
|
+
headers: {
|
|
1885
|
+
[name: string]: unknown;
|
|
1886
|
+
};
|
|
1887
|
+
content: {
|
|
1888
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1889
|
+
};
|
|
1890
|
+
};
|
|
1891
|
+
/** @description problem+json. SECRET_KEY_FROM_BROWSER: a secret key was sent from a browser. */
|
|
1892
|
+
403: {
|
|
1893
|
+
headers: {
|
|
1894
|
+
[name: string]: unknown;
|
|
1895
|
+
};
|
|
1896
|
+
content: {
|
|
1897
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1898
|
+
};
|
|
1899
|
+
};
|
|
1900
|
+
/** @description problem+json. CHECKOUT_NOT_FOUND. */
|
|
1901
|
+
404: {
|
|
1902
|
+
headers: {
|
|
1903
|
+
[name: string]: unknown;
|
|
1904
|
+
};
|
|
1905
|
+
content: {
|
|
1906
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1907
|
+
};
|
|
1908
|
+
};
|
|
1909
|
+
/** @description problem+json. RATE_LIMITED; retryAfterSeconds and the Retry-After header say how long to wait. */
|
|
1910
|
+
429: {
|
|
1911
|
+
headers: {
|
|
1912
|
+
[name: string]: unknown;
|
|
1913
|
+
};
|
|
1914
|
+
content: {
|
|
1915
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1916
|
+
};
|
|
1917
|
+
};
|
|
1918
|
+
/** @description problem+json. SITE_REGISTRY_WARMING or INDEX_UNAVAILABLE — retry, the request was not wrong. */
|
|
1919
|
+
503: {
|
|
1920
|
+
headers: {
|
|
1921
|
+
[name: string]: unknown;
|
|
1922
|
+
};
|
|
1923
|
+
content: {
|
|
1924
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1925
|
+
};
|
|
1926
|
+
};
|
|
1927
|
+
};
|
|
1928
|
+
};
|
|
1929
|
+
GetCollections: {
|
|
1930
|
+
parameters: {
|
|
1931
|
+
query?: never;
|
|
1932
|
+
header: {
|
|
1933
|
+
/** @description Publishable, preview or secret site key. Required on every request; secret keys are server-side only. */
|
|
1934
|
+
"X-Site-Key": string;
|
|
1935
|
+
/** @description Market code (e.g. "se"). Omit for the site's default market. */
|
|
1936
|
+
"X-Market"?: string;
|
|
1937
|
+
/** @description BCP-47 language tag. Omit to use the market's language. */
|
|
1938
|
+
"Accept-Language"?: string;
|
|
1939
|
+
};
|
|
1940
|
+
path?: never;
|
|
1941
|
+
cookie?: never;
|
|
1942
|
+
};
|
|
1943
|
+
requestBody?: never;
|
|
1944
|
+
responses: {
|
|
1945
|
+
/** @description OK */
|
|
1946
|
+
200: {
|
|
1947
|
+
headers: {
|
|
1948
|
+
[name: string]: unknown;
|
|
1949
|
+
};
|
|
1950
|
+
content: {
|
|
1951
|
+
"application/json": components["schemas"]["CollectionDto"][];
|
|
1952
|
+
};
|
|
1953
|
+
};
|
|
1954
|
+
/** @description problem+json. MARKET_UNKNOWN (no such market on this site) or INVALID_PAGE. */
|
|
1955
|
+
400: {
|
|
1956
|
+
headers: {
|
|
1957
|
+
[name: string]: unknown;
|
|
1958
|
+
};
|
|
1959
|
+
content: {
|
|
1960
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1961
|
+
};
|
|
1962
|
+
};
|
|
1963
|
+
/** @description problem+json. SITE_KEY_MISSING or SITE_KEY_INVALID. */
|
|
1964
|
+
401: {
|
|
1965
|
+
headers: {
|
|
1966
|
+
[name: string]: unknown;
|
|
1967
|
+
};
|
|
1968
|
+
content: {
|
|
1969
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1970
|
+
};
|
|
1971
|
+
};
|
|
1972
|
+
/** @description problem+json. SECRET_KEY_FROM_BROWSER: a secret key was sent from a browser. */
|
|
1973
|
+
403: {
|
|
1974
|
+
headers: {
|
|
1975
|
+
[name: string]: unknown;
|
|
1976
|
+
};
|
|
1977
|
+
content: {
|
|
1978
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1979
|
+
};
|
|
1980
|
+
};
|
|
1981
|
+
/** @description problem+json. SITE_INACTIVE, or NOT_FOUND for an unrouted path. */
|
|
1982
|
+
404: {
|
|
1983
|
+
headers: {
|
|
1984
|
+
[name: string]: unknown;
|
|
1985
|
+
};
|
|
1986
|
+
content: {
|
|
1987
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1988
|
+
};
|
|
1989
|
+
};
|
|
1990
|
+
/** @description problem+json. RATE_LIMITED; retryAfterSeconds and the Retry-After header say how long to wait. */
|
|
1991
|
+
429: {
|
|
1992
|
+
headers: {
|
|
1993
|
+
[name: string]: unknown;
|
|
1994
|
+
};
|
|
1995
|
+
content: {
|
|
1996
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1997
|
+
};
|
|
1998
|
+
};
|
|
1999
|
+
/** @description problem+json. SITE_REGISTRY_WARMING or INDEX_UNAVAILABLE — retry, the request was not wrong. */
|
|
2000
|
+
503: {
|
|
2001
|
+
headers: {
|
|
2002
|
+
[name: string]: unknown;
|
|
2003
|
+
};
|
|
2004
|
+
content: {
|
|
2005
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
2006
|
+
};
|
|
2007
|
+
};
|
|
2008
|
+
};
|
|
2009
|
+
};
|
|
2010
|
+
GetCollection: {
|
|
2011
|
+
parameters: {
|
|
2012
|
+
query?: {
|
|
2013
|
+
/** @description Free-text search. Omit to browse rather than search. */
|
|
2014
|
+
q?: string;
|
|
2015
|
+
/** @description 1-based page. page × pageSize must not exceed 10000 (default pageSize 24, max 100). */
|
|
2016
|
+
page?: number;
|
|
2017
|
+
/** @description Items per page, 1–100. Out of range is a 400 with code INVALID_PAGE. */
|
|
2018
|
+
pageSize?: number;
|
|
2019
|
+
/** @description Sort key. An unknown one is not refused: it falls back to relevance with a SORT_UNKNOWN warning, because it usually comes from a stale bookmark. */
|
|
2020
|
+
sort?: "name_asc" | "newest" | "price_asc" | "price_desc" | "relevance";
|
|
2021
|
+
/** @description Facet selection, sent as filter[key]=value. Several values for one facet are comma-separated; price is "min-max" and a boolean facet is "true". An unknown key is dropped with a FILTER_IGNORED warning. */
|
|
2022
|
+
filter?: {
|
|
2023
|
+
[key: string]: string;
|
|
2024
|
+
};
|
|
2025
|
+
};
|
|
2026
|
+
header: {
|
|
2027
|
+
/** @description Publishable, preview or secret site key. Required on every request; secret keys are server-side only. */
|
|
2028
|
+
"X-Site-Key": string;
|
|
2029
|
+
/** @description Market code (e.g. "se"). Omit for the site's default market. */
|
|
2030
|
+
"X-Market"?: string;
|
|
2031
|
+
/** @description BCP-47 language tag. Omit to use the market's language. */
|
|
2032
|
+
"Accept-Language"?: string;
|
|
2033
|
+
};
|
|
2034
|
+
path: {
|
|
2035
|
+
slugOrId: string;
|
|
2036
|
+
};
|
|
2037
|
+
cookie?: never;
|
|
2038
|
+
};
|
|
2039
|
+
requestBody?: never;
|
|
2040
|
+
responses: {
|
|
2041
|
+
/** @description OK */
|
|
2042
|
+
200: {
|
|
2043
|
+
headers: {
|
|
2044
|
+
[name: string]: unknown;
|
|
2045
|
+
};
|
|
2046
|
+
content: {
|
|
2047
|
+
"application/json": components["schemas"]["CollectionListingResponse"];
|
|
2048
|
+
};
|
|
2049
|
+
};
|
|
2050
|
+
/** @description problem+json. MARKET_UNKNOWN (no such market on this site) or INVALID_PAGE. */
|
|
2051
|
+
400: {
|
|
2052
|
+
headers: {
|
|
2053
|
+
[name: string]: unknown;
|
|
2054
|
+
};
|
|
2055
|
+
content: {
|
|
2056
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
2057
|
+
};
|
|
2058
|
+
};
|
|
2059
|
+
/** @description problem+json. SITE_KEY_MISSING or SITE_KEY_INVALID. */
|
|
2060
|
+
401: {
|
|
2061
|
+
headers: {
|
|
2062
|
+
[name: string]: unknown;
|
|
2063
|
+
};
|
|
2064
|
+
content: {
|
|
2065
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
2066
|
+
};
|
|
2067
|
+
};
|
|
2068
|
+
/** @description problem+json. SECRET_KEY_FROM_BROWSER: a secret key was sent from a browser. */
|
|
2069
|
+
403: {
|
|
2070
|
+
headers: {
|
|
2071
|
+
[name: string]: unknown;
|
|
2072
|
+
};
|
|
2073
|
+
content: {
|
|
2074
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
2075
|
+
};
|
|
2076
|
+
};
|
|
2077
|
+
/** @description problem+json. COLLECTION_NOT_FOUND, or SITE_INACTIVE when the site itself is not live. */
|
|
2078
|
+
404: {
|
|
2079
|
+
headers: {
|
|
2080
|
+
[name: string]: unknown;
|
|
2081
|
+
};
|
|
2082
|
+
content: {
|
|
2083
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
2084
|
+
};
|
|
2085
|
+
};
|
|
2086
|
+
/** @description problem+json. RATE_LIMITED; retryAfterSeconds and the Retry-After header say how long to wait. */
|
|
2087
|
+
429: {
|
|
2088
|
+
headers: {
|
|
2089
|
+
[name: string]: unknown;
|
|
2090
|
+
};
|
|
2091
|
+
content: {
|
|
2092
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
2093
|
+
};
|
|
2094
|
+
};
|
|
2095
|
+
/** @description problem+json. SITE_REGISTRY_WARMING or INDEX_UNAVAILABLE — retry, the request was not wrong. */
|
|
2096
|
+
503: {
|
|
2097
|
+
headers: {
|
|
2098
|
+
[name: string]: unknown;
|
|
2099
|
+
};
|
|
2100
|
+
content: {
|
|
2101
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
2102
|
+
};
|
|
2103
|
+
};
|
|
2104
|
+
};
|
|
2105
|
+
};
|
|
2106
|
+
RequestErasure: {
|
|
2107
|
+
parameters: {
|
|
2108
|
+
query?: never;
|
|
2109
|
+
header: {
|
|
2110
|
+
/** @description Publishable, preview or secret site key. Required on every request; secret keys are server-side only. */
|
|
2111
|
+
"X-Site-Key": string;
|
|
2112
|
+
/** @description Market code (e.g. "se"). Omit for the site's default market. */
|
|
2113
|
+
"X-Market"?: string;
|
|
2114
|
+
/** @description BCP-47 language tag. Omit to use the market's language. */
|
|
2115
|
+
"Accept-Language"?: string;
|
|
2116
|
+
};
|
|
2117
|
+
path?: never;
|
|
2118
|
+
cookie?: never;
|
|
2119
|
+
};
|
|
2120
|
+
requestBody?: {
|
|
2121
|
+
content: {
|
|
2122
|
+
"application/json": null | components["schemas"]["ErasureRequest"];
|
|
2123
|
+
};
|
|
2124
|
+
};
|
|
2125
|
+
responses: {
|
|
2126
|
+
/** @description Accepted */
|
|
2127
|
+
202: {
|
|
2128
|
+
headers: {
|
|
2129
|
+
[name: string]: unknown;
|
|
2130
|
+
};
|
|
2131
|
+
content?: never;
|
|
2132
|
+
};
|
|
2133
|
+
/** @description problem+json. INVALID_EMAIL. */
|
|
2134
|
+
400: {
|
|
2135
|
+
headers: {
|
|
2136
|
+
[name: string]: unknown;
|
|
2137
|
+
};
|
|
2138
|
+
content: {
|
|
2139
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
2140
|
+
};
|
|
2141
|
+
};
|
|
2142
|
+
/** @description problem+json. SITE_KEY_MISSING or SITE_KEY_INVALID. */
|
|
2143
|
+
401: {
|
|
2144
|
+
headers: {
|
|
2145
|
+
[name: string]: unknown;
|
|
2146
|
+
};
|
|
2147
|
+
content: {
|
|
2148
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
2149
|
+
};
|
|
2150
|
+
};
|
|
2151
|
+
/** @description problem+json. SECRET_KEY_REQUIRED, or SECRET_KEY_FROM_BROWSER. */
|
|
2152
|
+
403: {
|
|
2153
|
+
headers: {
|
|
2154
|
+
[name: string]: unknown;
|
|
2155
|
+
};
|
|
2156
|
+
content: {
|
|
2157
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
2158
|
+
};
|
|
2159
|
+
};
|
|
2160
|
+
/** @description problem+json. SITE_INACTIVE, or NOT_FOUND for an unrouted path. */
|
|
2161
|
+
404: {
|
|
2162
|
+
headers: {
|
|
2163
|
+
[name: string]: unknown;
|
|
2164
|
+
};
|
|
2165
|
+
content: {
|
|
2166
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
2167
|
+
};
|
|
2168
|
+
};
|
|
2169
|
+
/** @description problem+json. RATE_LIMITED; retryAfterSeconds and the Retry-After header say how long to wait. */
|
|
2170
|
+
429: {
|
|
2171
|
+
headers: {
|
|
2172
|
+
[name: string]: unknown;
|
|
2173
|
+
};
|
|
2174
|
+
content: {
|
|
2175
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
2176
|
+
};
|
|
2177
|
+
};
|
|
2178
|
+
/** @description problem+json. SITE_KEYS_SYNCING (Retry-After) or SITE_REGISTRY_WARMING. */
|
|
2179
|
+
503: {
|
|
2180
|
+
headers: {
|
|
2181
|
+
[name: string]: unknown;
|
|
2182
|
+
};
|
|
2183
|
+
content: {
|
|
2184
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
2185
|
+
};
|
|
2186
|
+
};
|
|
2187
|
+
};
|
|
2188
|
+
};
|
|
2189
|
+
GetOrder: {
|
|
2190
|
+
parameters: {
|
|
2191
|
+
query?: never;
|
|
2192
|
+
header: {
|
|
2193
|
+
/** @description Publishable, preview or secret site key. Required on every request; secret keys are server-side only. */
|
|
2194
|
+
"X-Site-Key": string;
|
|
2195
|
+
/** @description Market code (e.g. "se"). Omit for the site's default market. */
|
|
2196
|
+
"X-Market"?: string;
|
|
2197
|
+
/** @description BCP-47 language tag. Omit to use the market's language. */
|
|
2198
|
+
"Accept-Language"?: string;
|
|
2199
|
+
/** @description Optional. When it names the attempt's cart, the answer carries the order's access token (complete) or opens the order (orders). */
|
|
2200
|
+
"X-Cart-Token"?: string;
|
|
2201
|
+
/** @description The order's access token, from the completion answer. A header only — never a query parameter. */
|
|
2202
|
+
"X-Order-Token"?: string;
|
|
2203
|
+
};
|
|
2204
|
+
path: {
|
|
2205
|
+
orderId: string;
|
|
2206
|
+
};
|
|
2207
|
+
cookie?: never;
|
|
2208
|
+
};
|
|
2209
|
+
requestBody?: never;
|
|
2210
|
+
responses: {
|
|
2211
|
+
/** @description OK */
|
|
2212
|
+
200: {
|
|
2213
|
+
headers: {
|
|
2214
|
+
[name: string]: unknown;
|
|
2215
|
+
};
|
|
2216
|
+
content: {
|
|
2217
|
+
"application/json": components["schemas"]["OrderDto"];
|
|
2218
|
+
};
|
|
2219
|
+
};
|
|
2220
|
+
/** @description problem+json. MARKET_UNKNOWN (no such market on this site) or INVALID_PAGE. */
|
|
2221
|
+
400: {
|
|
2222
|
+
headers: {
|
|
2223
|
+
[name: string]: unknown;
|
|
2224
|
+
};
|
|
2225
|
+
content: {
|
|
2226
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
2227
|
+
};
|
|
2228
|
+
};
|
|
2229
|
+
/** @description problem+json. SITE_KEY_MISSING or SITE_KEY_INVALID. */
|
|
2230
|
+
401: {
|
|
2231
|
+
headers: {
|
|
2232
|
+
[name: string]: unknown;
|
|
2233
|
+
};
|
|
2234
|
+
content: {
|
|
2235
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
2236
|
+
};
|
|
2237
|
+
};
|
|
2238
|
+
/** @description problem+json. SECRET_KEY_FROM_BROWSER: a secret key was sent from a browser. */
|
|
2239
|
+
403: {
|
|
2240
|
+
headers: {
|
|
2241
|
+
[name: string]: unknown;
|
|
2242
|
+
};
|
|
2243
|
+
content: {
|
|
2244
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
2245
|
+
};
|
|
2246
|
+
};
|
|
2247
|
+
/** @description problem+json. ORDER_NOT_FOUND: no such order, or the credential does not open it — the same answer for both. */
|
|
2248
|
+
404: {
|
|
2249
|
+
headers: {
|
|
2250
|
+
[name: string]: unknown;
|
|
2251
|
+
};
|
|
2252
|
+
content: {
|
|
2253
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
2254
|
+
};
|
|
2255
|
+
};
|
|
2256
|
+
/** @description problem+json. RATE_LIMITED; retryAfterSeconds and the Retry-After header say how long to wait. */
|
|
2257
|
+
429: {
|
|
2258
|
+
headers: {
|
|
2259
|
+
[name: string]: unknown;
|
|
2260
|
+
};
|
|
2261
|
+
content: {
|
|
2262
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
2263
|
+
};
|
|
2264
|
+
};
|
|
2265
|
+
/** @description problem+json. SITE_KEYS_SYNCING (a secret key before the site's first key sync; Retry-After) or SITE_REGISTRY_WARMING. */
|
|
2266
|
+
503: {
|
|
2267
|
+
headers: {
|
|
2268
|
+
[name: string]: unknown;
|
|
2269
|
+
};
|
|
2270
|
+
content: {
|
|
2271
|
+
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
2272
|
+
};
|
|
2273
|
+
};
|
|
2274
|
+
};
|
|
2275
|
+
};
|
|
1566
2276
|
ListProducts: {
|
|
1567
2277
|
parameters: {
|
|
1568
2278
|
query?: {
|