@asstio-dev/storefront 0.7.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 +122 -3
- 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 +4 -0
- package/dist/index.js +4 -0
- package/dist/schema.d.ts +715 -25
- package/package.json +2 -2
- package/src/schema.d.ts +715 -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;
|
|
@@ -508,6 +688,49 @@ export interface components {
|
|
|
508
688
|
name: string;
|
|
509
689
|
values: string[];
|
|
510
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
|
+
};
|
|
511
734
|
PriceDto: {
|
|
512
735
|
amount: string;
|
|
513
736
|
compareAt: null | string;
|
|
@@ -624,6 +847,10 @@ export interface components {
|
|
|
624
847
|
key: string;
|
|
625
848
|
label: string;
|
|
626
849
|
};
|
|
850
|
+
StartCheckoutRequest: {
|
|
851
|
+
option: null | string;
|
|
852
|
+
returnOrigin: null | string;
|
|
853
|
+
};
|
|
627
854
|
/**
|
|
628
855
|
* Problem
|
|
629
856
|
* @description RFC 9457 problem document. Branch on `code`: it is stable, unlike `title` and `detail`.
|
|
@@ -668,6 +895,11 @@ export interface components {
|
|
|
668
895
|
color: null | string;
|
|
669
896
|
image: null | components["schemas"]["MediaDescriptorDto"];
|
|
670
897
|
};
|
|
898
|
+
TrackingDto: {
|
|
899
|
+
carrier: string;
|
|
900
|
+
number: string;
|
|
901
|
+
url: null | string;
|
|
902
|
+
};
|
|
671
903
|
UpdateCartLineRequest: {
|
|
672
904
|
/** Format: int32 */
|
|
673
905
|
quantity: number | string;
|
|
@@ -707,6 +939,10 @@ export interface components {
|
|
|
707
939
|
/** Format: int64 */
|
|
708
940
|
total: number | string;
|
|
709
941
|
};
|
|
942
|
+
VatAmountDto: {
|
|
943
|
+
amount: string;
|
|
944
|
+
rate: string;
|
|
945
|
+
};
|
|
710
946
|
WarningDto: {
|
|
711
947
|
code: string;
|
|
712
948
|
lineId?: null | string;
|
|
@@ -1406,7 +1642,7 @@ export interface operations {
|
|
|
1406
1642
|
};
|
|
1407
1643
|
};
|
|
1408
1644
|
};
|
|
1409
|
-
|
|
1645
|
+
StartCheckout: {
|
|
1410
1646
|
parameters: {
|
|
1411
1647
|
query?: never;
|
|
1412
1648
|
header: {
|
|
@@ -1416,11 +1652,17 @@ export interface operations {
|
|
|
1416
1652
|
"X-Market"?: string;
|
|
1417
1653
|
/** @description BCP-47 language tag. Omit to use the market's language. */
|
|
1418
1654
|
"Accept-Language"?: string;
|
|
1655
|
+
/** @description The cart's bearer token. The checkout works on this cart. */
|
|
1656
|
+
"X-Cart-Token": string;
|
|
1419
1657
|
};
|
|
1420
1658
|
path?: never;
|
|
1421
1659
|
cookie?: never;
|
|
1422
1660
|
};
|
|
1423
|
-
requestBody?:
|
|
1661
|
+
requestBody?: {
|
|
1662
|
+
content: {
|
|
1663
|
+
"application/json": null | components["schemas"]["StartCheckoutRequest"];
|
|
1664
|
+
};
|
|
1665
|
+
};
|
|
1424
1666
|
responses: {
|
|
1425
1667
|
/** @description OK */
|
|
1426
1668
|
200: {
|
|
@@ -1428,10 +1670,10 @@ export interface operations {
|
|
|
1428
1670
|
[name: string]: unknown;
|
|
1429
1671
|
};
|
|
1430
1672
|
content: {
|
|
1431
|
-
"application/json": components["schemas"]["
|
|
1673
|
+
"application/json": components["schemas"]["CheckoutDto"];
|
|
1432
1674
|
};
|
|
1433
1675
|
};
|
|
1434
|
-
/** @description problem+json.
|
|
1676
|
+
/** @description problem+json. NOT_FOUND (X-Cart-Token missing), OPTION_NOT_AVAILABLE, or ORIGIN_NOT_ALLOWED. */
|
|
1435
1677
|
400: {
|
|
1436
1678
|
headers: {
|
|
1437
1679
|
[name: string]: unknown;
|
|
@@ -1449,7 +1691,7 @@ export interface operations {
|
|
|
1449
1691
|
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1450
1692
|
};
|
|
1451
1693
|
};
|
|
1452
|
-
/** @description problem+json.
|
|
1694
|
+
/** @description problem+json. CHECKOUT_PREVIEW_KEY: a preview key cannot check out; or SECRET_KEY_FROM_BROWSER. */
|
|
1453
1695
|
403: {
|
|
1454
1696
|
headers: {
|
|
1455
1697
|
[name: string]: unknown;
|
|
@@ -1467,6 +1709,24 @@ export interface operations {
|
|
|
1467
1709
|
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1468
1710
|
};
|
|
1469
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
|
+
};
|
|
1470
1730
|
/** @description problem+json. RATE_LIMITED; retryAfterSeconds and the Retry-After header say how long to wait. */
|
|
1471
1731
|
429: {
|
|
1472
1732
|
headers: {
|
|
@@ -1476,7 +1736,16 @@ export interface operations {
|
|
|
1476
1736
|
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1477
1737
|
};
|
|
1478
1738
|
};
|
|
1479
|
-
/** @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. */
|
|
1480
1749
|
503: {
|
|
1481
1750
|
headers: {
|
|
1482
1751
|
[name: string]: unknown;
|
|
@@ -1487,22 +1756,9 @@ export interface operations {
|
|
|
1487
1756
|
};
|
|
1488
1757
|
};
|
|
1489
1758
|
};
|
|
1490
|
-
|
|
1759
|
+
GetCheckout: {
|
|
1491
1760
|
parameters: {
|
|
1492
|
-
query?:
|
|
1493
|
-
/** @description Free-text search. Omit to browse rather than search. */
|
|
1494
|
-
q?: string;
|
|
1495
|
-
/** @description 1-based page. page × pageSize must not exceed 10000 (default pageSize 24, max 100). */
|
|
1496
|
-
page?: number;
|
|
1497
|
-
/** @description Items per page, 1–100. Out of range is a 400 with code INVALID_PAGE. */
|
|
1498
|
-
pageSize?: number;
|
|
1499
|
-
/** @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. */
|
|
1500
|
-
sort?: "name_asc" | "newest" | "price_asc" | "price_desc" | "relevance";
|
|
1501
|
-
/** @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. */
|
|
1502
|
-
filter?: {
|
|
1503
|
-
[key: string]: string;
|
|
1504
|
-
};
|
|
1505
|
-
};
|
|
1761
|
+
query?: never;
|
|
1506
1762
|
header: {
|
|
1507
1763
|
/** @description Publishable, preview or secret site key. Required on every request; secret keys are server-side only. */
|
|
1508
1764
|
"X-Site-Key": string;
|
|
@@ -1510,9 +1766,11 @@ export interface operations {
|
|
|
1510
1766
|
"X-Market"?: string;
|
|
1511
1767
|
/** @description BCP-47 language tag. Omit to use the market's language. */
|
|
1512
1768
|
"Accept-Language"?: string;
|
|
1769
|
+
/** @description The cart's bearer token. The checkout works on this cart. */
|
|
1770
|
+
"X-Cart-Token": string;
|
|
1513
1771
|
};
|
|
1514
1772
|
path: {
|
|
1515
|
-
|
|
1773
|
+
attemptId: string;
|
|
1516
1774
|
};
|
|
1517
1775
|
cookie?: never;
|
|
1518
1776
|
};
|
|
@@ -1524,10 +1782,10 @@ export interface operations {
|
|
|
1524
1782
|
[name: string]: unknown;
|
|
1525
1783
|
};
|
|
1526
1784
|
content: {
|
|
1527
|
-
"application/json": components["schemas"]["
|
|
1785
|
+
"application/json": components["schemas"]["CheckoutStatusDto"];
|
|
1528
1786
|
};
|
|
1529
1787
|
};
|
|
1530
|
-
/** @description problem+json.
|
|
1788
|
+
/** @description problem+json. NOT_FOUND (X-Cart-Token missing). */
|
|
1531
1789
|
400: {
|
|
1532
1790
|
headers: {
|
|
1533
1791
|
[name: string]: unknown;
|
|
@@ -1554,7 +1812,7 @@ export interface operations {
|
|
|
1554
1812
|
"application/problem+json": components["schemas"]["StorefrontProblem"];
|
|
1555
1813
|
};
|
|
1556
1814
|
};
|
|
1557
|
-
/** @description problem+json.
|
|
1815
|
+
/** @description problem+json. CHECKOUT_NOT_FOUND: no such attempt for this site and cart; or SITE_INACTIVE. */
|
|
1558
1816
|
404: {
|
|
1559
1817
|
headers: {
|
|
1560
1818
|
[name: string]: unknown;
|
|
@@ -1583,6 +1841,438 @@ export interface operations {
|
|
|
1583
1841
|
};
|
|
1584
1842
|
};
|
|
1585
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
|
+
};
|
|
1586
2276
|
ListProducts: {
|
|
1587
2277
|
parameters: {
|
|
1588
2278
|
query?: {
|