@poweredbysous/storefront-admin-sdk 4.7.0 → 4.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -554,7 +554,10 @@ interface paths {
554
554
  */
555
555
  get: operations["admin_printing_store_devices"];
556
556
  put?: never;
557
- /** @description Bind a printer in Sunmi for this store and save it (backoffice only). */
557
+ /**
558
+ * @description Bind a printer with its provider for this store and save it
559
+ * (backoffice only).
560
+ */
558
561
  post: operations["admin_printing_add_store_device"];
559
562
  delete?: never;
560
563
  options?: never;
@@ -579,6 +582,84 @@ interface paths {
579
582
  patch: operations["admin_printing_update_store_device"];
580
583
  trace?: never;
581
584
  };
585
+ "/api/v1/admin/printing/stores/{store_public_id}/devices/{device_id}/regenerate-secret/": {
586
+ parameters: {
587
+ query?: never;
588
+ header?: never;
589
+ path?: never;
590
+ cookie?: never;
591
+ };
592
+ get?: never;
593
+ put?: never;
594
+ /** @description A new polling URL for an Epson printer; the old one stops at once. */
595
+ post: operations["admin_printing_regenerate_store_device_url"];
596
+ delete?: never;
597
+ options?: never;
598
+ head?: never;
599
+ patch?: never;
600
+ trace?: never;
601
+ };
602
+ "/api/v1/admin/printing/stores/{store_public_id}/devices/{device_id}/remove/": {
603
+ parameters: {
604
+ query?: never;
605
+ header?: never;
606
+ path?: never;
607
+ cookie?: never;
608
+ };
609
+ get?: never;
610
+ put?: never;
611
+ /** @description Remove a printer for good: it stops printing, its history stays. */
612
+ post: operations["admin_printing_remove_store_device"];
613
+ delete?: never;
614
+ options?: never;
615
+ head?: never;
616
+ patch?: never;
617
+ trace?: never;
618
+ };
619
+ "/api/v1/admin/printing/stores/{store_public_id}/devices/{device_id}/setup/": {
620
+ parameters: {
621
+ query?: never;
622
+ header?: never;
623
+ path?: never;
624
+ cookie?: never;
625
+ };
626
+ /**
627
+ * @description An Epson printer's Web Config values, and whether it has polled yet.
628
+ *
629
+ * The portal's setup card polls this while it is open: ``last_seen_at``
630
+ * turns "Waiting for the printer" into "Connected". 404 for a Sunmi printer:
631
+ * it has nothing to set up.
632
+ */
633
+ get: operations["admin_printing_store_device_setup"];
634
+ put?: never;
635
+ post?: never;
636
+ delete?: never;
637
+ options?: never;
638
+ head?: never;
639
+ patch?: never;
640
+ trace?: never;
641
+ };
642
+ "/api/v1/admin/printing/stores/{store_public_id}/devices/{device_id}/test-print/": {
643
+ parameters: {
644
+ query?: never;
645
+ header?: never;
646
+ path?: never;
647
+ cookie?: never;
648
+ };
649
+ get?: never;
650
+ put?: never;
651
+ /**
652
+ * @description Print one Test print slip, with no order, on this printer.
653
+ *
654
+ * 202 with the job; a repeated ``request_id`` returns the first job.
655
+ */
656
+ post: operations["admin_printing_test_print_store_device"];
657
+ delete?: never;
658
+ options?: never;
659
+ head?: never;
660
+ patch?: never;
661
+ trace?: never;
662
+ };
582
663
  "/api/v1/admin/products/": {
583
664
  parameters: {
584
665
  query?: never;
@@ -4349,6 +4430,25 @@ interface components {
4349
4430
  eligible_promotions: components["schemas"]["EligiblePromotionItem"][];
4350
4431
  best_promotion_id: number | null;
4351
4432
  };
4433
+ /** @description What to type into an Epson printer's Web Config (Server Direct Print). */
4434
+ EpsonSetup: {
4435
+ provider: components["schemas"]["ProviderEnum"];
4436
+ /** @description Web Config "ID": the serial from the printer's label. */
4437
+ printer_id: string;
4438
+ /** @description Web Config "URL". Secret: whoever has it can read the store's slips. */
4439
+ poll_url: string;
4440
+ /** @description Web Config "Interval". */
4441
+ interval_seconds: number;
4442
+ /** @description Web Config "Server Authentication": true Enable, false Disable. */
4443
+ server_authentication: boolean;
4444
+ /**
4445
+ * Format: date-time
4446
+ * @description The printer's last poll. Null: it has not polled this URL yet ("Waiting for the printer").
4447
+ */
4448
+ last_seen_at: string | null;
4449
+ /** @description Polled within three polling intervals, as the printer list's `online`. False after a first poll: it has stopped polling. */
4450
+ online: boolean;
4451
+ };
4352
4452
  /**
4353
4453
  * @description * `pending` - Pending
4354
4454
  * * `fulfilled` - Fulfilled
@@ -4730,6 +4830,12 @@ interface components {
4730
4830
  };
4731
4831
  /** @enum {unknown} */
4732
4832
  NullEnum: null;
4833
+ /**
4834
+ * @description * `menubox` - menubox
4835
+ * * `shop` - shop
4836
+ * @enum {string}
4837
+ */
4838
+ OfferingEnum: "menubox" | "shop";
4733
4839
  /** @description Render-ready open/closed badge — see ``availability.get_open_status``. */
4734
4840
  OpenStatus: {
4735
4841
  open: boolean;
@@ -5698,6 +5804,7 @@ interface components {
5698
5804
  };
5699
5805
  PrintDevice: {
5700
5806
  id: number;
5807
+ provider: components["schemas"]["ProviderEnum"];
5701
5808
  name: string;
5702
5809
  /** @description The printer's serial number (Sunmi: the MSN on its label). */
5703
5810
  device_identifier: string;
@@ -5712,16 +5819,24 @@ interface components {
5712
5819
  alert_state: components["schemas"]["AlertStateEnum"];
5713
5820
  /** Format: date-time */
5714
5821
  last_seen_at: string | null;
5715
- /** @description The last online check run by Sous staff: true online, false offline, null never checked. Not live. */
5822
+ /** @description Sunmi: the last online check run by Sous staff, true online, false offline, null never checked; not live. Epson: live, true when the printer polled within three polling intervals. */
5716
5823
  online: boolean | null;
5717
5824
  /**
5718
5825
  * Format: date-time
5719
- * @description When that check ran.
5826
+ * @description When the staff check ran. An Epson printer's live state comes from `last_seen_at` instead.
5720
5827
  */
5721
5828
  online_checked_at: string | null;
5722
5829
  };
5723
5830
  /** @description A backoffice user adds a printer to the store in the URL. */
5724
5831
  PrintDeviceCreateRequest: {
5832
+ /**
5833
+ * @description The printer's make. Sunmi is bound with Sunmi; an Epson printer gets its own polling URL (see the device's setup).
5834
+ *
5835
+ * * `sunmi` - Sunmi
5836
+ * * `epson` - Epson
5837
+ * @default sunmi
5838
+ */
5839
+ provider: components["schemas"]["ProviderEnum"];
5725
5840
  /** @description Serial from the printer's label, e.g. N439259A11700. */
5726
5841
  device_identifier: string;
5727
5842
  /** @description e.g. "Kitchen" */
@@ -5942,6 +6057,9 @@ interface components {
5942
6057
  readonly trend_score: string | null;
5943
6058
  readonly promotion: components["schemas"]["ProductPromotion"] | null;
5944
6059
  readonly auto_discount: components["schemas"]["ProductAutoDiscount"] | null;
6060
+ /** Format: decimal */
6061
+ readonly customer_service_fee: string | null;
6062
+ readonly peak_delivery_dates: string[];
5945
6063
  /** Format: date-time */
5946
6064
  readonly created_at: string;
5947
6065
  /** Format: date-time */
@@ -5979,6 +6097,7 @@ interface components {
5979
6097
  /** Format: int64 */
5980
6098
  store_id: number;
5981
6099
  readonly product_type: components["schemas"]["ProductType"];
6100
+ readonly offering: (components["schemas"]["OfferingEnum"] | components["schemas"]["NullEnum"]) | null;
5982
6101
  /** Format: decimal */
5983
6102
  price: string;
5984
6103
  /** Format: decimal */
@@ -6172,6 +6291,49 @@ interface components {
6172
6291
  * @enum {string}
6173
6292
  */
6174
6293
  PromotionTypeEnum: "buy_x_get_y" | "bogo";
6294
+ /**
6295
+ * @description * `sunmi` - Sunmi
6296
+ * * `epson` - Epson
6297
+ * @enum {string}
6298
+ */
6299
+ ProviderEnum: "sunmi" | "epson";
6300
+ /** @description The onboarding block the storefront reads: no portal-only ``setup``. */
6301
+ PublicStoreOnboarding: {
6302
+ slug: string;
6303
+ name?: string;
6304
+ tagline?: string;
6305
+ description?: string;
6306
+ logo_text?: string;
6307
+ theme?: unknown;
6308
+ layout?: string;
6309
+ languages?: unknown;
6310
+ default_language?: string;
6311
+ currency?: string;
6312
+ country?: string;
6313
+ timezone?: string;
6314
+ contact?: unknown;
6315
+ hours?: unknown;
6316
+ social?: unknown;
6317
+ seo?: unknown;
6318
+ fulfilment?: unknown;
6319
+ cuisine?: string;
6320
+ price_range?: string;
6321
+ product_placeholder?: string;
6322
+ analytics?: unknown;
6323
+ labels?: unknown;
6324
+ frame_ancestors?: unknown;
6325
+ multi_store?: boolean;
6326
+ brand_slug?: string;
6327
+ default_store?: string;
6328
+ readonly status: components["schemas"]["StoreOnboardingStatusEnum"];
6329
+ /** Format: date-time */
6330
+ readonly published_at: string | null;
6331
+ /** Format: date-time */
6332
+ readonly updated_at: string;
6333
+ readonly brand_assets: components["schemas"]["StoreBrandAsset"][];
6334
+ readonly uber_direct_supported_countries: string[];
6335
+ readonly delivery_method_toggles: components["schemas"]["DeliveryMethodToggles"] | null;
6336
+ };
6175
6337
  /** @description Serializer for the purchased gift card detail view. */
6176
6338
  PurchasedGiftCardDetail: {
6177
6339
  readonly id: number;
@@ -6423,7 +6585,7 @@ interface components {
6423
6585
  [key: string]: unknown;
6424
6586
  } | null;
6425
6587
  readonly brand_assets: components["schemas"]["StoreBrandAsset"][];
6426
- readonly onboarding: components["schemas"]["StoreOnboarding"] | null;
6588
+ readonly onboarding: components["schemas"]["PublicStoreOnboarding"] | null;
6427
6589
  /**
6428
6590
  * @description False while the merchant has temporarily paused new orders.
6429
6591
  *
@@ -6465,6 +6627,8 @@ interface components {
6465
6627
  StoreDeliveryMethodStates: {
6466
6628
  store_public_id: string;
6467
6629
  methods: components["schemas"]["DeliveryMethodState"][];
6630
+ /** @description Method ids (as in ``method``) the merchant chose in the unpublished onboarding draft that the company has no availability record for yet. Nothing is enabled until publish; a screen shows these as pending, not as on or off. */
6631
+ pending_methods: string[];
6468
6632
  };
6469
6633
  StoreMeAddress: {
6470
6634
  address_1: string;
@@ -6484,49 +6648,6 @@ interface components {
6484
6648
  /** Format: double */
6485
6649
  longitude?: number | null;
6486
6650
  };
6487
- /**
6488
- * @description Read/write serializer for the store-onboarding wizard.
6489
- *
6490
- * Supports partial updates (PATCH autosave). ``status`` and ``published_at``
6491
- * are read-only — they are driven by the dedicated publish endpoint, not by
6492
- * arbitrary field edits.
6493
- */
6494
- StoreOnboarding: {
6495
- slug: string;
6496
- name?: string;
6497
- tagline?: string;
6498
- description?: string;
6499
- logo_text?: string;
6500
- theme?: unknown;
6501
- layout?: string;
6502
- languages?: unknown;
6503
- default_language?: string;
6504
- currency?: string;
6505
- country?: string;
6506
- timezone?: string;
6507
- contact?: unknown;
6508
- hours?: unknown;
6509
- social?: unknown;
6510
- seo?: unknown;
6511
- fulfilment?: unknown;
6512
- cuisine?: string;
6513
- price_range?: string;
6514
- product_placeholder?: string;
6515
- analytics?: unknown;
6516
- labels?: unknown;
6517
- frame_ancestors?: unknown;
6518
- multi_store?: boolean;
6519
- brand_slug?: string;
6520
- default_store?: string;
6521
- readonly status: components["schemas"]["StoreOnboardingStatusEnum"];
6522
- /** Format: date-time */
6523
- readonly published_at: string | null;
6524
- /** Format: date-time */
6525
- readonly updated_at: string;
6526
- readonly brand_assets: components["schemas"]["StoreBrandAsset"][];
6527
- readonly uber_direct_supported_countries: string[];
6528
- readonly delivery_method_toggles: components["schemas"]["DeliveryMethodToggles"] | null;
6529
- };
6530
6651
  /**
6531
6652
  * @description * `draft` - Draft
6532
6653
  * * `published` - Published
@@ -6573,6 +6694,14 @@ interface components {
6573
6694
  * @enum {string}
6574
6695
  */
6575
6696
  SurfaceEnum: "top_banner" | "bottom_banner" | "modal" | "toast" | "inline_cart" | "inline_checkout";
6697
+ /** @description ``request_id`` is generated per click: a retry prints nothing new. */
6698
+ TestPrintRequest: {
6699
+ /** Format: uuid */
6700
+ request_id: string;
6701
+ };
6702
+ TestPrintResponse: {
6703
+ job: components["schemas"]["PrintJob"];
6704
+ };
6576
6705
  /**
6577
6706
  * @description * `info` - Info
6578
6707
  * * `success` - Success
@@ -6629,11 +6758,12 @@ interface components {
6629
6758
  readonly created_at: string;
6630
6759
  };
6631
6760
  /**
6632
- * @description * `auto` - auto
6633
- * * `manual` - manual
6761
+ * @description * `auto` - Automatic (order arrived)
6762
+ * * `manual` - Manual (merchant portal)
6763
+ * * `test` - Test print (merchant portal)
6634
6764
  * @enum {string}
6635
6765
  */
6636
- TriggerEnum: "auto" | "manual";
6766
+ TriggerEnum: "auto" | "manual" | "test";
6637
6767
  /**
6638
6768
  * @description * `authorization_request` - Authorization Request
6639
6769
  * * `authorization_success` - Authorization Success
@@ -9550,6 +9680,354 @@ interface operations {
9550
9680
  };
9551
9681
  };
9552
9682
  };
9683
+ admin_printing_regenerate_store_device_url: {
9684
+ parameters: {
9685
+ query?: never;
9686
+ header?: {
9687
+ /** @description Company the request acts on. Ignored for merchant tokens (scoped to their own company); required for admin tokens to select a company. */
9688
+ "X-Sous-Company-Id"?: number;
9689
+ };
9690
+ path: {
9691
+ device_id: number;
9692
+ store_public_id: string;
9693
+ };
9694
+ cookie?: never;
9695
+ };
9696
+ requestBody?: never;
9697
+ responses: {
9698
+ 200: {
9699
+ headers: {
9700
+ [name: string]: unknown;
9701
+ };
9702
+ content: {
9703
+ "application/json": components["schemas"]["EpsonSetup"];
9704
+ };
9705
+ };
9706
+ /** @description Possible error codes include `VALIDATION_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
9707
+ 400: {
9708
+ headers: {
9709
+ [name: string]: unknown;
9710
+ };
9711
+ content: {
9712
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9713
+ };
9714
+ };
9715
+ /** @description Possible error codes include `UNAUTHORIZED`. Use `x-error-codes` for machine-readable retryability metadata. */
9716
+ 401: {
9717
+ headers: {
9718
+ [name: string]: unknown;
9719
+ };
9720
+ content: {
9721
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9722
+ };
9723
+ };
9724
+ /** @description Possible error codes include `FORBIDDEN`. Use `x-error-codes` for machine-readable retryability metadata. */
9725
+ 403: {
9726
+ headers: {
9727
+ [name: string]: unknown;
9728
+ };
9729
+ content: {
9730
+ "application/json": {
9731
+ [key: string]: unknown;
9732
+ };
9733
+ };
9734
+ };
9735
+ /** @description Possible error codes include `NOT_FOUND`. Use `x-error-codes` for machine-readable retryability metadata. */
9736
+ 404: {
9737
+ headers: {
9738
+ [name: string]: unknown;
9739
+ };
9740
+ content: {
9741
+ "application/json": {
9742
+ [key: string]: unknown;
9743
+ };
9744
+ };
9745
+ };
9746
+ /** @description Possible error codes include `RATE_LIMITED`. Use `x-error-codes` for machine-readable retryability metadata. */
9747
+ 429: {
9748
+ headers: {
9749
+ [name: string]: unknown;
9750
+ };
9751
+ content: {
9752
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9753
+ };
9754
+ };
9755
+ /** @description Possible error codes include `INTERNAL_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
9756
+ 500: {
9757
+ headers: {
9758
+ [name: string]: unknown;
9759
+ };
9760
+ content: {
9761
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9762
+ };
9763
+ };
9764
+ 503: {
9765
+ headers: {
9766
+ [name: string]: unknown;
9767
+ };
9768
+ content: {
9769
+ "application/json": {
9770
+ [key: string]: unknown;
9771
+ };
9772
+ };
9773
+ };
9774
+ };
9775
+ };
9776
+ admin_printing_remove_store_device: {
9777
+ parameters: {
9778
+ query?: never;
9779
+ header?: {
9780
+ /** @description Company the request acts on. Ignored for merchant tokens (scoped to their own company); required for admin tokens to select a company. */
9781
+ "X-Sous-Company-Id"?: number;
9782
+ };
9783
+ path: {
9784
+ device_id: number;
9785
+ store_public_id: string;
9786
+ };
9787
+ cookie?: never;
9788
+ };
9789
+ requestBody?: never;
9790
+ responses: {
9791
+ 200: {
9792
+ headers: {
9793
+ [name: string]: unknown;
9794
+ };
9795
+ content: {
9796
+ "application/json": components["schemas"]["PrintDevice"];
9797
+ };
9798
+ };
9799
+ /** @description Possible error codes include `VALIDATION_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
9800
+ 400: {
9801
+ headers: {
9802
+ [name: string]: unknown;
9803
+ };
9804
+ content: {
9805
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9806
+ };
9807
+ };
9808
+ /** @description Possible error codes include `UNAUTHORIZED`. Use `x-error-codes` for machine-readable retryability metadata. */
9809
+ 401: {
9810
+ headers: {
9811
+ [name: string]: unknown;
9812
+ };
9813
+ content: {
9814
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9815
+ };
9816
+ };
9817
+ /** @description Possible error codes include `FORBIDDEN`. Use `x-error-codes` for machine-readable retryability metadata. */
9818
+ 403: {
9819
+ headers: {
9820
+ [name: string]: unknown;
9821
+ };
9822
+ content: {
9823
+ "application/json": {
9824
+ [key: string]: unknown;
9825
+ };
9826
+ };
9827
+ };
9828
+ /** @description Possible error codes include `NOT_FOUND`. Use `x-error-codes` for machine-readable retryability metadata. */
9829
+ 404: {
9830
+ headers: {
9831
+ [name: string]: unknown;
9832
+ };
9833
+ content: {
9834
+ "application/json": {
9835
+ [key: string]: unknown;
9836
+ };
9837
+ };
9838
+ };
9839
+ /** @description Possible error codes include `RATE_LIMITED`. Use `x-error-codes` for machine-readable retryability metadata. */
9840
+ 429: {
9841
+ headers: {
9842
+ [name: string]: unknown;
9843
+ };
9844
+ content: {
9845
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9846
+ };
9847
+ };
9848
+ /** @description Possible error codes include `INTERNAL_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
9849
+ 500: {
9850
+ headers: {
9851
+ [name: string]: unknown;
9852
+ };
9853
+ content: {
9854
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9855
+ };
9856
+ };
9857
+ };
9858
+ };
9859
+ admin_printing_store_device_setup: {
9860
+ parameters: {
9861
+ query?: never;
9862
+ header?: {
9863
+ /** @description Company the request acts on. Ignored for merchant tokens (scoped to their own company); required for admin tokens to select a company. */
9864
+ "X-Sous-Company-Id"?: number;
9865
+ };
9866
+ path: {
9867
+ device_id: number;
9868
+ store_public_id: string;
9869
+ };
9870
+ cookie?: never;
9871
+ };
9872
+ requestBody?: never;
9873
+ responses: {
9874
+ 200: {
9875
+ headers: {
9876
+ [name: string]: unknown;
9877
+ };
9878
+ content: {
9879
+ "application/json": components["schemas"]["EpsonSetup"];
9880
+ };
9881
+ };
9882
+ /** @description Possible error codes include `VALIDATION_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
9883
+ 400: {
9884
+ headers: {
9885
+ [name: string]: unknown;
9886
+ };
9887
+ content: {
9888
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9889
+ };
9890
+ };
9891
+ /** @description Possible error codes include `UNAUTHORIZED`. Use `x-error-codes` for machine-readable retryability metadata. */
9892
+ 401: {
9893
+ headers: {
9894
+ [name: string]: unknown;
9895
+ };
9896
+ content: {
9897
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9898
+ };
9899
+ };
9900
+ /** @description Possible error codes include `FORBIDDEN`. Use `x-error-codes` for machine-readable retryability metadata. */
9901
+ 403: {
9902
+ headers: {
9903
+ [name: string]: unknown;
9904
+ };
9905
+ content: {
9906
+ "application/json": {
9907
+ [key: string]: unknown;
9908
+ };
9909
+ };
9910
+ };
9911
+ /** @description Possible error codes include `NOT_FOUND`. Use `x-error-codes` for machine-readable retryability metadata. */
9912
+ 404: {
9913
+ headers: {
9914
+ [name: string]: unknown;
9915
+ };
9916
+ content: {
9917
+ "application/json": {
9918
+ [key: string]: unknown;
9919
+ };
9920
+ };
9921
+ };
9922
+ /** @description Possible error codes include `RATE_LIMITED`. Use `x-error-codes` for machine-readable retryability metadata. */
9923
+ 429: {
9924
+ headers: {
9925
+ [name: string]: unknown;
9926
+ };
9927
+ content: {
9928
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9929
+ };
9930
+ };
9931
+ /** @description Possible error codes include `INTERNAL_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
9932
+ 500: {
9933
+ headers: {
9934
+ [name: string]: unknown;
9935
+ };
9936
+ content: {
9937
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9938
+ };
9939
+ };
9940
+ };
9941
+ };
9942
+ admin_printing_test_print_store_device: {
9943
+ parameters: {
9944
+ query?: never;
9945
+ header?: {
9946
+ /** @description Company the request acts on. Ignored for merchant tokens (scoped to their own company); required for admin tokens to select a company. */
9947
+ "X-Sous-Company-Id"?: number;
9948
+ };
9949
+ path: {
9950
+ device_id: number;
9951
+ store_public_id: string;
9952
+ };
9953
+ cookie?: never;
9954
+ };
9955
+ requestBody: {
9956
+ content: {
9957
+ "application/json": components["schemas"]["TestPrintRequest"];
9958
+ "application/x-www-form-urlencoded": components["schemas"]["TestPrintRequest"];
9959
+ "multipart/form-data": components["schemas"]["TestPrintRequest"];
9960
+ };
9961
+ };
9962
+ responses: {
9963
+ 202: {
9964
+ headers: {
9965
+ [name: string]: unknown;
9966
+ };
9967
+ content: {
9968
+ "application/json": components["schemas"]["TestPrintResponse"];
9969
+ };
9970
+ };
9971
+ /** @description Possible error codes include `VALIDATION_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
9972
+ 400: {
9973
+ headers: {
9974
+ [name: string]: unknown;
9975
+ };
9976
+ content: {
9977
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9978
+ };
9979
+ };
9980
+ /** @description Possible error codes include `UNAUTHORIZED`. Use `x-error-codes` for machine-readable retryability metadata. */
9981
+ 401: {
9982
+ headers: {
9983
+ [name: string]: unknown;
9984
+ };
9985
+ content: {
9986
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9987
+ };
9988
+ };
9989
+ /** @description Possible error codes include `FORBIDDEN`. Use `x-error-codes` for machine-readable retryability metadata. */
9990
+ 403: {
9991
+ headers: {
9992
+ [name: string]: unknown;
9993
+ };
9994
+ content: {
9995
+ "application/json": {
9996
+ [key: string]: unknown;
9997
+ };
9998
+ };
9999
+ };
10000
+ /** @description Possible error codes include `NOT_FOUND`. Use `x-error-codes` for machine-readable retryability metadata. */
10001
+ 404: {
10002
+ headers: {
10003
+ [name: string]: unknown;
10004
+ };
10005
+ content: {
10006
+ "application/json": {
10007
+ [key: string]: unknown;
10008
+ };
10009
+ };
10010
+ };
10011
+ /** @description Possible error codes include `RATE_LIMITED`. Use `x-error-codes` for machine-readable retryability metadata. */
10012
+ 429: {
10013
+ headers: {
10014
+ [name: string]: unknown;
10015
+ };
10016
+ content: {
10017
+ "application/json": components["schemas"]["APIErrorEnvelope"];
10018
+ };
10019
+ };
10020
+ /** @description Possible error codes include `INTERNAL_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
10021
+ 500: {
10022
+ headers: {
10023
+ [name: string]: unknown;
10024
+ };
10025
+ content: {
10026
+ "application/json": components["schemas"]["APIErrorEnvelope"];
10027
+ };
10028
+ };
10029
+ };
10030
+ };
9553
10031
  admin_products_list: {
9554
10032
  parameters: {
9555
10033
  query?: {
package/dist/index.d.ts CHANGED
@@ -554,7 +554,10 @@ interface paths {
554
554
  */
555
555
  get: operations["admin_printing_store_devices"];
556
556
  put?: never;
557
- /** @description Bind a printer in Sunmi for this store and save it (backoffice only). */
557
+ /**
558
+ * @description Bind a printer with its provider for this store and save it
559
+ * (backoffice only).
560
+ */
558
561
  post: operations["admin_printing_add_store_device"];
559
562
  delete?: never;
560
563
  options?: never;
@@ -579,6 +582,84 @@ interface paths {
579
582
  patch: operations["admin_printing_update_store_device"];
580
583
  trace?: never;
581
584
  };
585
+ "/api/v1/admin/printing/stores/{store_public_id}/devices/{device_id}/regenerate-secret/": {
586
+ parameters: {
587
+ query?: never;
588
+ header?: never;
589
+ path?: never;
590
+ cookie?: never;
591
+ };
592
+ get?: never;
593
+ put?: never;
594
+ /** @description A new polling URL for an Epson printer; the old one stops at once. */
595
+ post: operations["admin_printing_regenerate_store_device_url"];
596
+ delete?: never;
597
+ options?: never;
598
+ head?: never;
599
+ patch?: never;
600
+ trace?: never;
601
+ };
602
+ "/api/v1/admin/printing/stores/{store_public_id}/devices/{device_id}/remove/": {
603
+ parameters: {
604
+ query?: never;
605
+ header?: never;
606
+ path?: never;
607
+ cookie?: never;
608
+ };
609
+ get?: never;
610
+ put?: never;
611
+ /** @description Remove a printer for good: it stops printing, its history stays. */
612
+ post: operations["admin_printing_remove_store_device"];
613
+ delete?: never;
614
+ options?: never;
615
+ head?: never;
616
+ patch?: never;
617
+ trace?: never;
618
+ };
619
+ "/api/v1/admin/printing/stores/{store_public_id}/devices/{device_id}/setup/": {
620
+ parameters: {
621
+ query?: never;
622
+ header?: never;
623
+ path?: never;
624
+ cookie?: never;
625
+ };
626
+ /**
627
+ * @description An Epson printer's Web Config values, and whether it has polled yet.
628
+ *
629
+ * The portal's setup card polls this while it is open: ``last_seen_at``
630
+ * turns "Waiting for the printer" into "Connected". 404 for a Sunmi printer:
631
+ * it has nothing to set up.
632
+ */
633
+ get: operations["admin_printing_store_device_setup"];
634
+ put?: never;
635
+ post?: never;
636
+ delete?: never;
637
+ options?: never;
638
+ head?: never;
639
+ patch?: never;
640
+ trace?: never;
641
+ };
642
+ "/api/v1/admin/printing/stores/{store_public_id}/devices/{device_id}/test-print/": {
643
+ parameters: {
644
+ query?: never;
645
+ header?: never;
646
+ path?: never;
647
+ cookie?: never;
648
+ };
649
+ get?: never;
650
+ put?: never;
651
+ /**
652
+ * @description Print one Test print slip, with no order, on this printer.
653
+ *
654
+ * 202 with the job; a repeated ``request_id`` returns the first job.
655
+ */
656
+ post: operations["admin_printing_test_print_store_device"];
657
+ delete?: never;
658
+ options?: never;
659
+ head?: never;
660
+ patch?: never;
661
+ trace?: never;
662
+ };
582
663
  "/api/v1/admin/products/": {
583
664
  parameters: {
584
665
  query?: never;
@@ -4349,6 +4430,25 @@ interface components {
4349
4430
  eligible_promotions: components["schemas"]["EligiblePromotionItem"][];
4350
4431
  best_promotion_id: number | null;
4351
4432
  };
4433
+ /** @description What to type into an Epson printer's Web Config (Server Direct Print). */
4434
+ EpsonSetup: {
4435
+ provider: components["schemas"]["ProviderEnum"];
4436
+ /** @description Web Config "ID": the serial from the printer's label. */
4437
+ printer_id: string;
4438
+ /** @description Web Config "URL". Secret: whoever has it can read the store's slips. */
4439
+ poll_url: string;
4440
+ /** @description Web Config "Interval". */
4441
+ interval_seconds: number;
4442
+ /** @description Web Config "Server Authentication": true Enable, false Disable. */
4443
+ server_authentication: boolean;
4444
+ /**
4445
+ * Format: date-time
4446
+ * @description The printer's last poll. Null: it has not polled this URL yet ("Waiting for the printer").
4447
+ */
4448
+ last_seen_at: string | null;
4449
+ /** @description Polled within three polling intervals, as the printer list's `online`. False after a first poll: it has stopped polling. */
4450
+ online: boolean;
4451
+ };
4352
4452
  /**
4353
4453
  * @description * `pending` - Pending
4354
4454
  * * `fulfilled` - Fulfilled
@@ -4730,6 +4830,12 @@ interface components {
4730
4830
  };
4731
4831
  /** @enum {unknown} */
4732
4832
  NullEnum: null;
4833
+ /**
4834
+ * @description * `menubox` - menubox
4835
+ * * `shop` - shop
4836
+ * @enum {string}
4837
+ */
4838
+ OfferingEnum: "menubox" | "shop";
4733
4839
  /** @description Render-ready open/closed badge — see ``availability.get_open_status``. */
4734
4840
  OpenStatus: {
4735
4841
  open: boolean;
@@ -5698,6 +5804,7 @@ interface components {
5698
5804
  };
5699
5805
  PrintDevice: {
5700
5806
  id: number;
5807
+ provider: components["schemas"]["ProviderEnum"];
5701
5808
  name: string;
5702
5809
  /** @description The printer's serial number (Sunmi: the MSN on its label). */
5703
5810
  device_identifier: string;
@@ -5712,16 +5819,24 @@ interface components {
5712
5819
  alert_state: components["schemas"]["AlertStateEnum"];
5713
5820
  /** Format: date-time */
5714
5821
  last_seen_at: string | null;
5715
- /** @description The last online check run by Sous staff: true online, false offline, null never checked. Not live. */
5822
+ /** @description Sunmi: the last online check run by Sous staff, true online, false offline, null never checked; not live. Epson: live, true when the printer polled within three polling intervals. */
5716
5823
  online: boolean | null;
5717
5824
  /**
5718
5825
  * Format: date-time
5719
- * @description When that check ran.
5826
+ * @description When the staff check ran. An Epson printer's live state comes from `last_seen_at` instead.
5720
5827
  */
5721
5828
  online_checked_at: string | null;
5722
5829
  };
5723
5830
  /** @description A backoffice user adds a printer to the store in the URL. */
5724
5831
  PrintDeviceCreateRequest: {
5832
+ /**
5833
+ * @description The printer's make. Sunmi is bound with Sunmi; an Epson printer gets its own polling URL (see the device's setup).
5834
+ *
5835
+ * * `sunmi` - Sunmi
5836
+ * * `epson` - Epson
5837
+ * @default sunmi
5838
+ */
5839
+ provider: components["schemas"]["ProviderEnum"];
5725
5840
  /** @description Serial from the printer's label, e.g. N439259A11700. */
5726
5841
  device_identifier: string;
5727
5842
  /** @description e.g. "Kitchen" */
@@ -5942,6 +6057,9 @@ interface components {
5942
6057
  readonly trend_score: string | null;
5943
6058
  readonly promotion: components["schemas"]["ProductPromotion"] | null;
5944
6059
  readonly auto_discount: components["schemas"]["ProductAutoDiscount"] | null;
6060
+ /** Format: decimal */
6061
+ readonly customer_service_fee: string | null;
6062
+ readonly peak_delivery_dates: string[];
5945
6063
  /** Format: date-time */
5946
6064
  readonly created_at: string;
5947
6065
  /** Format: date-time */
@@ -5979,6 +6097,7 @@ interface components {
5979
6097
  /** Format: int64 */
5980
6098
  store_id: number;
5981
6099
  readonly product_type: components["schemas"]["ProductType"];
6100
+ readonly offering: (components["schemas"]["OfferingEnum"] | components["schemas"]["NullEnum"]) | null;
5982
6101
  /** Format: decimal */
5983
6102
  price: string;
5984
6103
  /** Format: decimal */
@@ -6172,6 +6291,49 @@ interface components {
6172
6291
  * @enum {string}
6173
6292
  */
6174
6293
  PromotionTypeEnum: "buy_x_get_y" | "bogo";
6294
+ /**
6295
+ * @description * `sunmi` - Sunmi
6296
+ * * `epson` - Epson
6297
+ * @enum {string}
6298
+ */
6299
+ ProviderEnum: "sunmi" | "epson";
6300
+ /** @description The onboarding block the storefront reads: no portal-only ``setup``. */
6301
+ PublicStoreOnboarding: {
6302
+ slug: string;
6303
+ name?: string;
6304
+ tagline?: string;
6305
+ description?: string;
6306
+ logo_text?: string;
6307
+ theme?: unknown;
6308
+ layout?: string;
6309
+ languages?: unknown;
6310
+ default_language?: string;
6311
+ currency?: string;
6312
+ country?: string;
6313
+ timezone?: string;
6314
+ contact?: unknown;
6315
+ hours?: unknown;
6316
+ social?: unknown;
6317
+ seo?: unknown;
6318
+ fulfilment?: unknown;
6319
+ cuisine?: string;
6320
+ price_range?: string;
6321
+ product_placeholder?: string;
6322
+ analytics?: unknown;
6323
+ labels?: unknown;
6324
+ frame_ancestors?: unknown;
6325
+ multi_store?: boolean;
6326
+ brand_slug?: string;
6327
+ default_store?: string;
6328
+ readonly status: components["schemas"]["StoreOnboardingStatusEnum"];
6329
+ /** Format: date-time */
6330
+ readonly published_at: string | null;
6331
+ /** Format: date-time */
6332
+ readonly updated_at: string;
6333
+ readonly brand_assets: components["schemas"]["StoreBrandAsset"][];
6334
+ readonly uber_direct_supported_countries: string[];
6335
+ readonly delivery_method_toggles: components["schemas"]["DeliveryMethodToggles"] | null;
6336
+ };
6175
6337
  /** @description Serializer for the purchased gift card detail view. */
6176
6338
  PurchasedGiftCardDetail: {
6177
6339
  readonly id: number;
@@ -6423,7 +6585,7 @@ interface components {
6423
6585
  [key: string]: unknown;
6424
6586
  } | null;
6425
6587
  readonly brand_assets: components["schemas"]["StoreBrandAsset"][];
6426
- readonly onboarding: components["schemas"]["StoreOnboarding"] | null;
6588
+ readonly onboarding: components["schemas"]["PublicStoreOnboarding"] | null;
6427
6589
  /**
6428
6590
  * @description False while the merchant has temporarily paused new orders.
6429
6591
  *
@@ -6465,6 +6627,8 @@ interface components {
6465
6627
  StoreDeliveryMethodStates: {
6466
6628
  store_public_id: string;
6467
6629
  methods: components["schemas"]["DeliveryMethodState"][];
6630
+ /** @description Method ids (as in ``method``) the merchant chose in the unpublished onboarding draft that the company has no availability record for yet. Nothing is enabled until publish; a screen shows these as pending, not as on or off. */
6631
+ pending_methods: string[];
6468
6632
  };
6469
6633
  StoreMeAddress: {
6470
6634
  address_1: string;
@@ -6484,49 +6648,6 @@ interface components {
6484
6648
  /** Format: double */
6485
6649
  longitude?: number | null;
6486
6650
  };
6487
- /**
6488
- * @description Read/write serializer for the store-onboarding wizard.
6489
- *
6490
- * Supports partial updates (PATCH autosave). ``status`` and ``published_at``
6491
- * are read-only — they are driven by the dedicated publish endpoint, not by
6492
- * arbitrary field edits.
6493
- */
6494
- StoreOnboarding: {
6495
- slug: string;
6496
- name?: string;
6497
- tagline?: string;
6498
- description?: string;
6499
- logo_text?: string;
6500
- theme?: unknown;
6501
- layout?: string;
6502
- languages?: unknown;
6503
- default_language?: string;
6504
- currency?: string;
6505
- country?: string;
6506
- timezone?: string;
6507
- contact?: unknown;
6508
- hours?: unknown;
6509
- social?: unknown;
6510
- seo?: unknown;
6511
- fulfilment?: unknown;
6512
- cuisine?: string;
6513
- price_range?: string;
6514
- product_placeholder?: string;
6515
- analytics?: unknown;
6516
- labels?: unknown;
6517
- frame_ancestors?: unknown;
6518
- multi_store?: boolean;
6519
- brand_slug?: string;
6520
- default_store?: string;
6521
- readonly status: components["schemas"]["StoreOnboardingStatusEnum"];
6522
- /** Format: date-time */
6523
- readonly published_at: string | null;
6524
- /** Format: date-time */
6525
- readonly updated_at: string;
6526
- readonly brand_assets: components["schemas"]["StoreBrandAsset"][];
6527
- readonly uber_direct_supported_countries: string[];
6528
- readonly delivery_method_toggles: components["schemas"]["DeliveryMethodToggles"] | null;
6529
- };
6530
6651
  /**
6531
6652
  * @description * `draft` - Draft
6532
6653
  * * `published` - Published
@@ -6573,6 +6694,14 @@ interface components {
6573
6694
  * @enum {string}
6574
6695
  */
6575
6696
  SurfaceEnum: "top_banner" | "bottom_banner" | "modal" | "toast" | "inline_cart" | "inline_checkout";
6697
+ /** @description ``request_id`` is generated per click: a retry prints nothing new. */
6698
+ TestPrintRequest: {
6699
+ /** Format: uuid */
6700
+ request_id: string;
6701
+ };
6702
+ TestPrintResponse: {
6703
+ job: components["schemas"]["PrintJob"];
6704
+ };
6576
6705
  /**
6577
6706
  * @description * `info` - Info
6578
6707
  * * `success` - Success
@@ -6629,11 +6758,12 @@ interface components {
6629
6758
  readonly created_at: string;
6630
6759
  };
6631
6760
  /**
6632
- * @description * `auto` - auto
6633
- * * `manual` - manual
6761
+ * @description * `auto` - Automatic (order arrived)
6762
+ * * `manual` - Manual (merchant portal)
6763
+ * * `test` - Test print (merchant portal)
6634
6764
  * @enum {string}
6635
6765
  */
6636
- TriggerEnum: "auto" | "manual";
6766
+ TriggerEnum: "auto" | "manual" | "test";
6637
6767
  /**
6638
6768
  * @description * `authorization_request` - Authorization Request
6639
6769
  * * `authorization_success` - Authorization Success
@@ -9550,6 +9680,354 @@ interface operations {
9550
9680
  };
9551
9681
  };
9552
9682
  };
9683
+ admin_printing_regenerate_store_device_url: {
9684
+ parameters: {
9685
+ query?: never;
9686
+ header?: {
9687
+ /** @description Company the request acts on. Ignored for merchant tokens (scoped to their own company); required for admin tokens to select a company. */
9688
+ "X-Sous-Company-Id"?: number;
9689
+ };
9690
+ path: {
9691
+ device_id: number;
9692
+ store_public_id: string;
9693
+ };
9694
+ cookie?: never;
9695
+ };
9696
+ requestBody?: never;
9697
+ responses: {
9698
+ 200: {
9699
+ headers: {
9700
+ [name: string]: unknown;
9701
+ };
9702
+ content: {
9703
+ "application/json": components["schemas"]["EpsonSetup"];
9704
+ };
9705
+ };
9706
+ /** @description Possible error codes include `VALIDATION_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
9707
+ 400: {
9708
+ headers: {
9709
+ [name: string]: unknown;
9710
+ };
9711
+ content: {
9712
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9713
+ };
9714
+ };
9715
+ /** @description Possible error codes include `UNAUTHORIZED`. Use `x-error-codes` for machine-readable retryability metadata. */
9716
+ 401: {
9717
+ headers: {
9718
+ [name: string]: unknown;
9719
+ };
9720
+ content: {
9721
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9722
+ };
9723
+ };
9724
+ /** @description Possible error codes include `FORBIDDEN`. Use `x-error-codes` for machine-readable retryability metadata. */
9725
+ 403: {
9726
+ headers: {
9727
+ [name: string]: unknown;
9728
+ };
9729
+ content: {
9730
+ "application/json": {
9731
+ [key: string]: unknown;
9732
+ };
9733
+ };
9734
+ };
9735
+ /** @description Possible error codes include `NOT_FOUND`. Use `x-error-codes` for machine-readable retryability metadata. */
9736
+ 404: {
9737
+ headers: {
9738
+ [name: string]: unknown;
9739
+ };
9740
+ content: {
9741
+ "application/json": {
9742
+ [key: string]: unknown;
9743
+ };
9744
+ };
9745
+ };
9746
+ /** @description Possible error codes include `RATE_LIMITED`. Use `x-error-codes` for machine-readable retryability metadata. */
9747
+ 429: {
9748
+ headers: {
9749
+ [name: string]: unknown;
9750
+ };
9751
+ content: {
9752
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9753
+ };
9754
+ };
9755
+ /** @description Possible error codes include `INTERNAL_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
9756
+ 500: {
9757
+ headers: {
9758
+ [name: string]: unknown;
9759
+ };
9760
+ content: {
9761
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9762
+ };
9763
+ };
9764
+ 503: {
9765
+ headers: {
9766
+ [name: string]: unknown;
9767
+ };
9768
+ content: {
9769
+ "application/json": {
9770
+ [key: string]: unknown;
9771
+ };
9772
+ };
9773
+ };
9774
+ };
9775
+ };
9776
+ admin_printing_remove_store_device: {
9777
+ parameters: {
9778
+ query?: never;
9779
+ header?: {
9780
+ /** @description Company the request acts on. Ignored for merchant tokens (scoped to their own company); required for admin tokens to select a company. */
9781
+ "X-Sous-Company-Id"?: number;
9782
+ };
9783
+ path: {
9784
+ device_id: number;
9785
+ store_public_id: string;
9786
+ };
9787
+ cookie?: never;
9788
+ };
9789
+ requestBody?: never;
9790
+ responses: {
9791
+ 200: {
9792
+ headers: {
9793
+ [name: string]: unknown;
9794
+ };
9795
+ content: {
9796
+ "application/json": components["schemas"]["PrintDevice"];
9797
+ };
9798
+ };
9799
+ /** @description Possible error codes include `VALIDATION_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
9800
+ 400: {
9801
+ headers: {
9802
+ [name: string]: unknown;
9803
+ };
9804
+ content: {
9805
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9806
+ };
9807
+ };
9808
+ /** @description Possible error codes include `UNAUTHORIZED`. Use `x-error-codes` for machine-readable retryability metadata. */
9809
+ 401: {
9810
+ headers: {
9811
+ [name: string]: unknown;
9812
+ };
9813
+ content: {
9814
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9815
+ };
9816
+ };
9817
+ /** @description Possible error codes include `FORBIDDEN`. Use `x-error-codes` for machine-readable retryability metadata. */
9818
+ 403: {
9819
+ headers: {
9820
+ [name: string]: unknown;
9821
+ };
9822
+ content: {
9823
+ "application/json": {
9824
+ [key: string]: unknown;
9825
+ };
9826
+ };
9827
+ };
9828
+ /** @description Possible error codes include `NOT_FOUND`. Use `x-error-codes` for machine-readable retryability metadata. */
9829
+ 404: {
9830
+ headers: {
9831
+ [name: string]: unknown;
9832
+ };
9833
+ content: {
9834
+ "application/json": {
9835
+ [key: string]: unknown;
9836
+ };
9837
+ };
9838
+ };
9839
+ /** @description Possible error codes include `RATE_LIMITED`. Use `x-error-codes` for machine-readable retryability metadata. */
9840
+ 429: {
9841
+ headers: {
9842
+ [name: string]: unknown;
9843
+ };
9844
+ content: {
9845
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9846
+ };
9847
+ };
9848
+ /** @description Possible error codes include `INTERNAL_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
9849
+ 500: {
9850
+ headers: {
9851
+ [name: string]: unknown;
9852
+ };
9853
+ content: {
9854
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9855
+ };
9856
+ };
9857
+ };
9858
+ };
9859
+ admin_printing_store_device_setup: {
9860
+ parameters: {
9861
+ query?: never;
9862
+ header?: {
9863
+ /** @description Company the request acts on. Ignored for merchant tokens (scoped to their own company); required for admin tokens to select a company. */
9864
+ "X-Sous-Company-Id"?: number;
9865
+ };
9866
+ path: {
9867
+ device_id: number;
9868
+ store_public_id: string;
9869
+ };
9870
+ cookie?: never;
9871
+ };
9872
+ requestBody?: never;
9873
+ responses: {
9874
+ 200: {
9875
+ headers: {
9876
+ [name: string]: unknown;
9877
+ };
9878
+ content: {
9879
+ "application/json": components["schemas"]["EpsonSetup"];
9880
+ };
9881
+ };
9882
+ /** @description Possible error codes include `VALIDATION_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
9883
+ 400: {
9884
+ headers: {
9885
+ [name: string]: unknown;
9886
+ };
9887
+ content: {
9888
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9889
+ };
9890
+ };
9891
+ /** @description Possible error codes include `UNAUTHORIZED`. Use `x-error-codes` for machine-readable retryability metadata. */
9892
+ 401: {
9893
+ headers: {
9894
+ [name: string]: unknown;
9895
+ };
9896
+ content: {
9897
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9898
+ };
9899
+ };
9900
+ /** @description Possible error codes include `FORBIDDEN`. Use `x-error-codes` for machine-readable retryability metadata. */
9901
+ 403: {
9902
+ headers: {
9903
+ [name: string]: unknown;
9904
+ };
9905
+ content: {
9906
+ "application/json": {
9907
+ [key: string]: unknown;
9908
+ };
9909
+ };
9910
+ };
9911
+ /** @description Possible error codes include `NOT_FOUND`. Use `x-error-codes` for machine-readable retryability metadata. */
9912
+ 404: {
9913
+ headers: {
9914
+ [name: string]: unknown;
9915
+ };
9916
+ content: {
9917
+ "application/json": {
9918
+ [key: string]: unknown;
9919
+ };
9920
+ };
9921
+ };
9922
+ /** @description Possible error codes include `RATE_LIMITED`. Use `x-error-codes` for machine-readable retryability metadata. */
9923
+ 429: {
9924
+ headers: {
9925
+ [name: string]: unknown;
9926
+ };
9927
+ content: {
9928
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9929
+ };
9930
+ };
9931
+ /** @description Possible error codes include `INTERNAL_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
9932
+ 500: {
9933
+ headers: {
9934
+ [name: string]: unknown;
9935
+ };
9936
+ content: {
9937
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9938
+ };
9939
+ };
9940
+ };
9941
+ };
9942
+ admin_printing_test_print_store_device: {
9943
+ parameters: {
9944
+ query?: never;
9945
+ header?: {
9946
+ /** @description Company the request acts on. Ignored for merchant tokens (scoped to their own company); required for admin tokens to select a company. */
9947
+ "X-Sous-Company-Id"?: number;
9948
+ };
9949
+ path: {
9950
+ device_id: number;
9951
+ store_public_id: string;
9952
+ };
9953
+ cookie?: never;
9954
+ };
9955
+ requestBody: {
9956
+ content: {
9957
+ "application/json": components["schemas"]["TestPrintRequest"];
9958
+ "application/x-www-form-urlencoded": components["schemas"]["TestPrintRequest"];
9959
+ "multipart/form-data": components["schemas"]["TestPrintRequest"];
9960
+ };
9961
+ };
9962
+ responses: {
9963
+ 202: {
9964
+ headers: {
9965
+ [name: string]: unknown;
9966
+ };
9967
+ content: {
9968
+ "application/json": components["schemas"]["TestPrintResponse"];
9969
+ };
9970
+ };
9971
+ /** @description Possible error codes include `VALIDATION_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
9972
+ 400: {
9973
+ headers: {
9974
+ [name: string]: unknown;
9975
+ };
9976
+ content: {
9977
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9978
+ };
9979
+ };
9980
+ /** @description Possible error codes include `UNAUTHORIZED`. Use `x-error-codes` for machine-readable retryability metadata. */
9981
+ 401: {
9982
+ headers: {
9983
+ [name: string]: unknown;
9984
+ };
9985
+ content: {
9986
+ "application/json": components["schemas"]["APIErrorEnvelope"];
9987
+ };
9988
+ };
9989
+ /** @description Possible error codes include `FORBIDDEN`. Use `x-error-codes` for machine-readable retryability metadata. */
9990
+ 403: {
9991
+ headers: {
9992
+ [name: string]: unknown;
9993
+ };
9994
+ content: {
9995
+ "application/json": {
9996
+ [key: string]: unknown;
9997
+ };
9998
+ };
9999
+ };
10000
+ /** @description Possible error codes include `NOT_FOUND`. Use `x-error-codes` for machine-readable retryability metadata. */
10001
+ 404: {
10002
+ headers: {
10003
+ [name: string]: unknown;
10004
+ };
10005
+ content: {
10006
+ "application/json": {
10007
+ [key: string]: unknown;
10008
+ };
10009
+ };
10010
+ };
10011
+ /** @description Possible error codes include `RATE_LIMITED`. Use `x-error-codes` for machine-readable retryability metadata. */
10012
+ 429: {
10013
+ headers: {
10014
+ [name: string]: unknown;
10015
+ };
10016
+ content: {
10017
+ "application/json": components["schemas"]["APIErrorEnvelope"];
10018
+ };
10019
+ };
10020
+ /** @description Possible error codes include `INTERNAL_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
10021
+ 500: {
10022
+ headers: {
10023
+ [name: string]: unknown;
10024
+ };
10025
+ content: {
10026
+ "application/json": components["schemas"]["APIErrorEnvelope"];
10027
+ };
10028
+ };
10029
+ };
10030
+ };
9553
10031
  admin_products_list: {
9554
10032
  parameters: {
9555
10033
  query?: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@poweredbysous/storefront-admin-sdk",
3
- "version": "4.7.0",
3
+ "version": "4.8.0",
4
4
  "description": "Type-safe TypeScript SDK for SOUS Storefront Backend admin endpoints",
5
5
  "license": "UNLICENSED",
6
6
  "private": false,