@poweredbysous/storefront-all-sdk 4.16.0 → 4.18.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
@@ -7087,6 +7087,23 @@ interface paths {
7087
7087
  patch?: never;
7088
7088
  trace?: never;
7089
7089
  };
7090
+ "/api/v1/visits/": {
7091
+ parameters: {
7092
+ query?: never;
7093
+ header?: never;
7094
+ path?: never;
7095
+ cookie?: never;
7096
+ };
7097
+ get?: never;
7098
+ put?: never;
7099
+ /** @description Record one storefront visit and send it to Cerebro. */
7100
+ post: operations["visits_create"];
7101
+ delete?: never;
7102
+ options?: never;
7103
+ head?: never;
7104
+ patch?: never;
7105
+ trace?: never;
7106
+ };
7090
7107
  "/api/v1/webhooks/stripe-subscriptions/": {
7091
7108
  parameters: {
7092
7109
  query?: never;
@@ -7604,6 +7621,45 @@ interface components {
7604
7621
  slug: string;
7605
7622
  position?: number;
7606
7623
  };
7624
+ /**
7625
+ * @description * `granted` - granted
7626
+ * * `denied` - denied
7627
+ * * `unknown` - unknown
7628
+ * @enum {string}
7629
+ */
7630
+ AttributionConsentEnum: "granted" | "denied" | "unknown";
7631
+ /**
7632
+ * @description One landing: its click ids, UTMs, path and external referrer.
7633
+ *
7634
+ * The key set of a touch in the storefront-attribution contract (section 1).
7635
+ * An explicit allowlist rather than a free dict: this is attacker-controllable
7636
+ * URL input landing in a JSON column, so unknown keys are dropped, blank
7637
+ * values are dropped and every value is bounded (a longer one, or a null
7638
+ * byte, makes the record invalid).
7639
+ */
7640
+ AttributionTouch: {
7641
+ gclid?: string;
7642
+ gbraid?: string;
7643
+ wbraid?: string;
7644
+ msclkid?: string;
7645
+ fbclid?: string;
7646
+ /** @description Retention send id (`?rt=`). */
7647
+ rt?: string;
7648
+ utm_source?: string;
7649
+ utm_medium?: string;
7650
+ utm_campaign?: string;
7651
+ utm_term?: string;
7652
+ utm_content?: string;
7653
+ /** @description Path of this touch's landing document, no query string. */
7654
+ landing_path?: string;
7655
+ /** @description External host this touch landed from; never the storefront's. */
7656
+ referrer_host?: string;
7657
+ };
7658
+ /**
7659
+ * @description * `2` - 2
7660
+ * @enum {integer}
7661
+ */
7662
+ AttributionVersionEnum: 2;
7607
7663
  AuthToken: {
7608
7664
  username: string;
7609
7665
  password: string;
@@ -8345,7 +8401,7 @@ interface components {
8345
8401
  order_number: string | null;
8346
8402
  purpose: string;
8347
8403
  attribution: {
8348
- [key: string]: string;
8404
+ [key: string]: unknown;
8349
8405
  } | null;
8350
8406
  marketing_consent: {
8351
8407
  [key: string]: unknown;
@@ -8364,27 +8420,58 @@ interface components {
8364
8420
  }[];
8365
8421
  };
8366
8422
  /**
8367
- * @description Ad-click and campaign identifiers captured by the storefront at landing.
8423
+ * @description The attribution record: the last touch at the top level, plus the rest.
8424
+ *
8425
+ * storefront-attribution contract, section 1. Shared by checkout creation
8426
+ * and ``POST /api/v1/visits/``, stored on the checkout and copied to
8427
+ * ``Order.metadata["attribution"]`` unchanged. A record without ``v`` is the
8428
+ * flat record written before the contract and is still accepted.
8368
8429
  *
8369
- * Stored on the checkout and copied to the order at creation (PAT-2120) so
8370
- * server-side measurement, if added later, can attribute this period. Not
8371
- * read by anything yet. An explicit allowlist rather than a free dict: this
8372
- * is attacker-controllable URL input landing in a JSON column, so unknown
8373
- * keys are dropped and every value is bounded.
8430
+ * ``session_id`` and ``ga_client_id`` are the linking identifiers, so both
8431
+ * are dropped here unless the record's ``consent`` is ``granted``: nothing
8432
+ * downstream, checkout or visit, sees them without consent.
8433
+ *
8434
+ * An invalid record is refused by ``POST /api/v1/visits/`` and dropped by
8435
+ * checkout creation, which carries on without it.
8374
8436
  */
8375
8437
  CheckoutAttribution: {
8376
- /** @description GA4 client id from the `_ga` cookie (`X.Y`). */
8377
- ga_client_id?: string;
8378
8438
  gclid?: string;
8439
+ gbraid?: string;
8440
+ wbraid?: string;
8441
+ msclkid?: string;
8379
8442
  fbclid?: string;
8380
- gtm_debug?: string;
8443
+ /** @description Retention send id (`?rt=`). */
8444
+ rt?: string;
8381
8445
  utm_source?: string;
8382
8446
  utm_medium?: string;
8383
8447
  utm_campaign?: string;
8384
8448
  utm_term?: string;
8385
8449
  utm_content?: string;
8450
+ /** @description Path of this touch's landing document, no query string. */
8386
8451
  landing_path?: string;
8452
+ /** @description External host this touch landed from; never the storefront's. */
8387
8453
  referrer_host?: string;
8454
+ /**
8455
+ * @description Record version. Absent on records written before version 2.
8456
+ *
8457
+ * * `2` - 2
8458
+ */
8459
+ v?: components["schemas"]["AttributionVersionEnum"];
8460
+ /** @description The record's first landing. Required when `v` is 2. */
8461
+ first_touch?: components["schemas"]["AttributionTouch"];
8462
+ /** @description GA4 client id from the `_ga` cookie (`X.Y`). Dropped unless `consent` is `granted`. */
8463
+ ga_client_id?: string;
8464
+ /**
8465
+ * @description Cookie banner state when the record was sent. Required when `v` is 2.
8466
+ *
8467
+ * * `granted` - granted
8468
+ * * `denied` - denied
8469
+ * * `unknown` - unknown
8470
+ */
8471
+ consent?: components["schemas"]["AttributionConsentEnum"];
8472
+ /** @description `analytics_session_id`. Dropped unless `consent` is `granted`. */
8473
+ session_id?: string;
8474
+ gtm_debug?: string;
8388
8475
  };
8389
8476
  /** @description One row of the company availability list: a method and its on/off state. */
8390
8477
  CompanyDeliveryMethodAvailability: {
@@ -8506,7 +8593,7 @@ interface components {
8506
8593
  CreateCheckoutInput: {
8507
8594
  /** Format: uuid */
8508
8595
  cart_id: string;
8509
- /** @description Campaign and click identifiers seen by the storefront in this session; stamped on the checkout and the resulting order. */
8596
+ /** @description Campaign and click identifiers seen by the storefront in this session; stamped on the checkout and the resulting order. A record that fails validation is dropped, not refused. */
8510
8597
  attribution?: components["schemas"]["CheckoutAttribution"];
8511
8598
  /**
8512
8599
  * Format: decimal
@@ -9571,6 +9658,10 @@ interface components {
9571
9658
  party_sizes: {
9572
9659
  [key: string]: number;
9573
9660
  };
9661
+ /** @description Date (YYYY-MM-DD) to how many matching products can be delivered that day. The `date` parameter never narrows these counts. */
9662
+ servable_dates: {
9663
+ [key: string]: number;
9664
+ };
9574
9665
  };
9575
9666
  /** @description One product, with its name and description in the reader's language. */
9576
9667
  MarketplaceProduct: {
@@ -9600,6 +9691,8 @@ interface components {
9600
9691
  party_sizes: number[];
9601
9692
  /** @description Price divided by party size, in cents; null without a party size. */
9602
9693
  price_per_person_cents: number | null;
9694
+ /** @description Store-local dates in the next 90 days on which the cart would accept this product alone for delivery, ascending. A snapshot (see `availability_computed_at`): add-to-cart is the authority. */
9695
+ servable_dates: string[];
9603
9696
  };
9604
9697
  /** @description One page of marketplace products, shaped like the catalogue pagination. */
9605
9698
  MarketplaceSearch: {
@@ -9610,6 +9703,11 @@ interface components {
9610
9703
  previous: string | null;
9611
9704
  results: components["schemas"]["MarketplaceProduct"][];
9612
9705
  facets: components["schemas"]["MarketplaceFacets"];
9706
+ /**
9707
+ * Format: date-time
9708
+ * @description When the stalest result's `servable_dates` were computed; null when there are no results.
9709
+ */
9710
+ availability_computed_at: string | null;
9613
9711
  };
9614
9712
  /**
9615
9713
  * @description * `all` - All
@@ -11267,6 +11365,11 @@ interface components {
11267
11365
  previous: string | null;
11268
11366
  results: components["schemas"]["MarketplaceProduct"][];
11269
11367
  facets: components["schemas"]["MarketplaceFacets"];
11368
+ /**
11369
+ * Format: date-time
11370
+ * @description When the stalest result's `servable_dates` were computed; null when there are no results.
11371
+ */
11372
+ availability_computed_at: string | null;
11270
11373
  slug: string;
11271
11374
  name: string;
11272
11375
  description: string;
@@ -11388,6 +11491,9 @@ interface components {
11388
11491
  readonly trend_score: string | null;
11389
11492
  readonly promotion: components["schemas"]["ProductPromotion"] | null;
11390
11493
  readonly auto_discount: components["schemas"]["ProductAutoDiscount"] | null;
11494
+ /** Format: decimal */
11495
+ readonly customer_service_fee: string | null;
11496
+ readonly peak_delivery_dates: string[];
11391
11497
  /** Format: date-time */
11392
11498
  readonly created_at: string;
11393
11499
  /** Format: date-time */
@@ -12697,6 +12803,10 @@ interface components {
12697
12803
  /** Format: decimal */
12698
12804
  amount: string;
12699
12805
  };
12806
+ VisitInput: {
12807
+ /** @description The attribution record, as on checkout creation. */
12808
+ attribution: components["schemas"]["CheckoutAttribution"];
12809
+ };
12700
12810
  WebhookSubscription: {
12701
12811
  /** Format: uuid */
12702
12812
  readonly id: string;
@@ -29163,7 +29273,7 @@ interface operations {
29163
29273
  /** @description Only products created within this many days. */
29164
29274
  created_within_days?: number;
29165
29275
  cuisine_tags?: string[];
29166
- /** @description Only products servable on this store-local date (YYYY-MM-DD), within the next 60 days. Advisory: add-to-cart is the authority. */
29276
+ /** @description The delivery date the reader has chosen (YYYY-MM-DD). A hint, not a filter: products that cannot be delivered that day are still listed and counted, and each result's `servable_dates` says whether it can. Add-to-cart is the authority. */
29167
29277
  date?: string;
29168
29278
  fulfillment_types?: ("delivery" | "pickup" | "dinein")[];
29169
29279
  /** @description Menu type slugs, for example `vegan` or `meat-fish`. */
@@ -29371,7 +29481,7 @@ interface operations {
29371
29481
  /** @description Only products created within this many days. */
29372
29482
  created_within_days?: number;
29373
29483
  cuisine_tags?: string[];
29374
- /** @description Only products servable on this store-local date (YYYY-MM-DD), within the next 60 days. Advisory: add-to-cart is the authority. */
29484
+ /** @description The delivery date the reader has chosen (YYYY-MM-DD). A hint, not a filter: products that cannot be delivered that day are still listed and counted, and each result's `servable_dates` says whether it can. Add-to-cart is the authority. */
29375
29485
  date?: string;
29376
29486
  fulfillment_types?: ("delivery" | "pickup" | "dinein")[];
29377
29487
  /** @description Menu type slugs, for example `vegan` or `meat-fish`. */
@@ -44851,6 +44961,84 @@ interface operations {
44851
44961
  };
44852
44962
  };
44853
44963
  };
44964
+ visits_create: {
44965
+ parameters: {
44966
+ query?: never;
44967
+ header?: never;
44968
+ path?: never;
44969
+ cookie?: never;
44970
+ };
44971
+ requestBody: {
44972
+ content: {
44973
+ "application/json": components["schemas"]["VisitInput"];
44974
+ "application/x-www-form-urlencoded": components["schemas"]["VisitInput"];
44975
+ "multipart/form-data": components["schemas"]["VisitInput"];
44976
+ };
44977
+ };
44978
+ responses: {
44979
+ /** @description Recorded, bots included. No body. */
44980
+ 204: {
44981
+ headers: {
44982
+ [name: string]: unknown;
44983
+ };
44984
+ content?: never;
44985
+ };
44986
+ /** @description Possible error codes include `VALIDATION_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
44987
+ 400: {
44988
+ headers: {
44989
+ [name: string]: unknown;
44990
+ };
44991
+ content: {
44992
+ "application/json": components["schemas"]["APIErrorEnvelope"];
44993
+ };
44994
+ };
44995
+ /** @description Possible error codes include `UNAUTHORIZED`. Use `x-error-codes` for machine-readable retryability metadata. */
44996
+ 401: {
44997
+ headers: {
44998
+ [name: string]: unknown;
44999
+ };
45000
+ content: {
45001
+ "application/json": components["schemas"]["APIErrorEnvelope"];
45002
+ };
45003
+ };
45004
+ /** @description Possible error codes include `FORBIDDEN`. Use `x-error-codes` for machine-readable retryability metadata. */
45005
+ 403: {
45006
+ headers: {
45007
+ [name: string]: unknown;
45008
+ };
45009
+ content: {
45010
+ "application/json": components["schemas"]["APIErrorEnvelope"];
45011
+ };
45012
+ };
45013
+ /** @description Possible error codes include `NOT_FOUND`. Use `x-error-codes` for machine-readable retryability metadata. */
45014
+ 404: {
45015
+ headers: {
45016
+ [name: string]: unknown;
45017
+ };
45018
+ content: {
45019
+ "application/json": components["schemas"]["APIErrorEnvelope"];
45020
+ };
45021
+ };
45022
+ /** @description Possible error codes include `RATE_LIMITED`. Use `x-error-codes` for machine-readable retryability metadata. */
45023
+ 429: {
45024
+ headers: {
45025
+ [name: string]: unknown;
45026
+ };
45027
+ content: {
45028
+ "application/json": components["schemas"]["APIErrorEnvelope"];
45029
+ };
45030
+ };
45031
+ /** @description Possible error codes include `INTERNAL_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
45032
+ 500: {
45033
+ headers: {
45034
+ [name: string]: unknown;
45035
+ };
45036
+ content: {
45037
+ "application/json": components["schemas"]["APIErrorEnvelope"];
45038
+ };
45039
+ };
45040
+ };
45041
+ };
44854
45042
  webhooks_stripe_subscriptions_create: {
44855
45043
  parameters: {
44856
45044
  query?: never;
package/dist/index.d.ts CHANGED
@@ -7087,6 +7087,23 @@ interface paths {
7087
7087
  patch?: never;
7088
7088
  trace?: never;
7089
7089
  };
7090
+ "/api/v1/visits/": {
7091
+ parameters: {
7092
+ query?: never;
7093
+ header?: never;
7094
+ path?: never;
7095
+ cookie?: never;
7096
+ };
7097
+ get?: never;
7098
+ put?: never;
7099
+ /** @description Record one storefront visit and send it to Cerebro. */
7100
+ post: operations["visits_create"];
7101
+ delete?: never;
7102
+ options?: never;
7103
+ head?: never;
7104
+ patch?: never;
7105
+ trace?: never;
7106
+ };
7090
7107
  "/api/v1/webhooks/stripe-subscriptions/": {
7091
7108
  parameters: {
7092
7109
  query?: never;
@@ -7604,6 +7621,45 @@ interface components {
7604
7621
  slug: string;
7605
7622
  position?: number;
7606
7623
  };
7624
+ /**
7625
+ * @description * `granted` - granted
7626
+ * * `denied` - denied
7627
+ * * `unknown` - unknown
7628
+ * @enum {string}
7629
+ */
7630
+ AttributionConsentEnum: "granted" | "denied" | "unknown";
7631
+ /**
7632
+ * @description One landing: its click ids, UTMs, path and external referrer.
7633
+ *
7634
+ * The key set of a touch in the storefront-attribution contract (section 1).
7635
+ * An explicit allowlist rather than a free dict: this is attacker-controllable
7636
+ * URL input landing in a JSON column, so unknown keys are dropped, blank
7637
+ * values are dropped and every value is bounded (a longer one, or a null
7638
+ * byte, makes the record invalid).
7639
+ */
7640
+ AttributionTouch: {
7641
+ gclid?: string;
7642
+ gbraid?: string;
7643
+ wbraid?: string;
7644
+ msclkid?: string;
7645
+ fbclid?: string;
7646
+ /** @description Retention send id (`?rt=`). */
7647
+ rt?: string;
7648
+ utm_source?: string;
7649
+ utm_medium?: string;
7650
+ utm_campaign?: string;
7651
+ utm_term?: string;
7652
+ utm_content?: string;
7653
+ /** @description Path of this touch's landing document, no query string. */
7654
+ landing_path?: string;
7655
+ /** @description External host this touch landed from; never the storefront's. */
7656
+ referrer_host?: string;
7657
+ };
7658
+ /**
7659
+ * @description * `2` - 2
7660
+ * @enum {integer}
7661
+ */
7662
+ AttributionVersionEnum: 2;
7607
7663
  AuthToken: {
7608
7664
  username: string;
7609
7665
  password: string;
@@ -8345,7 +8401,7 @@ interface components {
8345
8401
  order_number: string | null;
8346
8402
  purpose: string;
8347
8403
  attribution: {
8348
- [key: string]: string;
8404
+ [key: string]: unknown;
8349
8405
  } | null;
8350
8406
  marketing_consent: {
8351
8407
  [key: string]: unknown;
@@ -8364,27 +8420,58 @@ interface components {
8364
8420
  }[];
8365
8421
  };
8366
8422
  /**
8367
- * @description Ad-click and campaign identifiers captured by the storefront at landing.
8423
+ * @description The attribution record: the last touch at the top level, plus the rest.
8424
+ *
8425
+ * storefront-attribution contract, section 1. Shared by checkout creation
8426
+ * and ``POST /api/v1/visits/``, stored on the checkout and copied to
8427
+ * ``Order.metadata["attribution"]`` unchanged. A record without ``v`` is the
8428
+ * flat record written before the contract and is still accepted.
8368
8429
  *
8369
- * Stored on the checkout and copied to the order at creation (PAT-2120) so
8370
- * server-side measurement, if added later, can attribute this period. Not
8371
- * read by anything yet. An explicit allowlist rather than a free dict: this
8372
- * is attacker-controllable URL input landing in a JSON column, so unknown
8373
- * keys are dropped and every value is bounded.
8430
+ * ``session_id`` and ``ga_client_id`` are the linking identifiers, so both
8431
+ * are dropped here unless the record's ``consent`` is ``granted``: nothing
8432
+ * downstream, checkout or visit, sees them without consent.
8433
+ *
8434
+ * An invalid record is refused by ``POST /api/v1/visits/`` and dropped by
8435
+ * checkout creation, which carries on without it.
8374
8436
  */
8375
8437
  CheckoutAttribution: {
8376
- /** @description GA4 client id from the `_ga` cookie (`X.Y`). */
8377
- ga_client_id?: string;
8378
8438
  gclid?: string;
8439
+ gbraid?: string;
8440
+ wbraid?: string;
8441
+ msclkid?: string;
8379
8442
  fbclid?: string;
8380
- gtm_debug?: string;
8443
+ /** @description Retention send id (`?rt=`). */
8444
+ rt?: string;
8381
8445
  utm_source?: string;
8382
8446
  utm_medium?: string;
8383
8447
  utm_campaign?: string;
8384
8448
  utm_term?: string;
8385
8449
  utm_content?: string;
8450
+ /** @description Path of this touch's landing document, no query string. */
8386
8451
  landing_path?: string;
8452
+ /** @description External host this touch landed from; never the storefront's. */
8387
8453
  referrer_host?: string;
8454
+ /**
8455
+ * @description Record version. Absent on records written before version 2.
8456
+ *
8457
+ * * `2` - 2
8458
+ */
8459
+ v?: components["schemas"]["AttributionVersionEnum"];
8460
+ /** @description The record's first landing. Required when `v` is 2. */
8461
+ first_touch?: components["schemas"]["AttributionTouch"];
8462
+ /** @description GA4 client id from the `_ga` cookie (`X.Y`). Dropped unless `consent` is `granted`. */
8463
+ ga_client_id?: string;
8464
+ /**
8465
+ * @description Cookie banner state when the record was sent. Required when `v` is 2.
8466
+ *
8467
+ * * `granted` - granted
8468
+ * * `denied` - denied
8469
+ * * `unknown` - unknown
8470
+ */
8471
+ consent?: components["schemas"]["AttributionConsentEnum"];
8472
+ /** @description `analytics_session_id`. Dropped unless `consent` is `granted`. */
8473
+ session_id?: string;
8474
+ gtm_debug?: string;
8388
8475
  };
8389
8476
  /** @description One row of the company availability list: a method and its on/off state. */
8390
8477
  CompanyDeliveryMethodAvailability: {
@@ -8506,7 +8593,7 @@ interface components {
8506
8593
  CreateCheckoutInput: {
8507
8594
  /** Format: uuid */
8508
8595
  cart_id: string;
8509
- /** @description Campaign and click identifiers seen by the storefront in this session; stamped on the checkout and the resulting order. */
8596
+ /** @description Campaign and click identifiers seen by the storefront in this session; stamped on the checkout and the resulting order. A record that fails validation is dropped, not refused. */
8510
8597
  attribution?: components["schemas"]["CheckoutAttribution"];
8511
8598
  /**
8512
8599
  * Format: decimal
@@ -9571,6 +9658,10 @@ interface components {
9571
9658
  party_sizes: {
9572
9659
  [key: string]: number;
9573
9660
  };
9661
+ /** @description Date (YYYY-MM-DD) to how many matching products can be delivered that day. The `date` parameter never narrows these counts. */
9662
+ servable_dates: {
9663
+ [key: string]: number;
9664
+ };
9574
9665
  };
9575
9666
  /** @description One product, with its name and description in the reader's language. */
9576
9667
  MarketplaceProduct: {
@@ -9600,6 +9691,8 @@ interface components {
9600
9691
  party_sizes: number[];
9601
9692
  /** @description Price divided by party size, in cents; null without a party size. */
9602
9693
  price_per_person_cents: number | null;
9694
+ /** @description Store-local dates in the next 90 days on which the cart would accept this product alone for delivery, ascending. A snapshot (see `availability_computed_at`): add-to-cart is the authority. */
9695
+ servable_dates: string[];
9603
9696
  };
9604
9697
  /** @description One page of marketplace products, shaped like the catalogue pagination. */
9605
9698
  MarketplaceSearch: {
@@ -9610,6 +9703,11 @@ interface components {
9610
9703
  previous: string | null;
9611
9704
  results: components["schemas"]["MarketplaceProduct"][];
9612
9705
  facets: components["schemas"]["MarketplaceFacets"];
9706
+ /**
9707
+ * Format: date-time
9708
+ * @description When the stalest result's `servable_dates` were computed; null when there are no results.
9709
+ */
9710
+ availability_computed_at: string | null;
9613
9711
  };
9614
9712
  /**
9615
9713
  * @description * `all` - All
@@ -11267,6 +11365,11 @@ interface components {
11267
11365
  previous: string | null;
11268
11366
  results: components["schemas"]["MarketplaceProduct"][];
11269
11367
  facets: components["schemas"]["MarketplaceFacets"];
11368
+ /**
11369
+ * Format: date-time
11370
+ * @description When the stalest result's `servable_dates` were computed; null when there are no results.
11371
+ */
11372
+ availability_computed_at: string | null;
11270
11373
  slug: string;
11271
11374
  name: string;
11272
11375
  description: string;
@@ -11388,6 +11491,9 @@ interface components {
11388
11491
  readonly trend_score: string | null;
11389
11492
  readonly promotion: components["schemas"]["ProductPromotion"] | null;
11390
11493
  readonly auto_discount: components["schemas"]["ProductAutoDiscount"] | null;
11494
+ /** Format: decimal */
11495
+ readonly customer_service_fee: string | null;
11496
+ readonly peak_delivery_dates: string[];
11391
11497
  /** Format: date-time */
11392
11498
  readonly created_at: string;
11393
11499
  /** Format: date-time */
@@ -12697,6 +12803,10 @@ interface components {
12697
12803
  /** Format: decimal */
12698
12804
  amount: string;
12699
12805
  };
12806
+ VisitInput: {
12807
+ /** @description The attribution record, as on checkout creation. */
12808
+ attribution: components["schemas"]["CheckoutAttribution"];
12809
+ };
12700
12810
  WebhookSubscription: {
12701
12811
  /** Format: uuid */
12702
12812
  readonly id: string;
@@ -29163,7 +29273,7 @@ interface operations {
29163
29273
  /** @description Only products created within this many days. */
29164
29274
  created_within_days?: number;
29165
29275
  cuisine_tags?: string[];
29166
- /** @description Only products servable on this store-local date (YYYY-MM-DD), within the next 60 days. Advisory: add-to-cart is the authority. */
29276
+ /** @description The delivery date the reader has chosen (YYYY-MM-DD). A hint, not a filter: products that cannot be delivered that day are still listed and counted, and each result's `servable_dates` says whether it can. Add-to-cart is the authority. */
29167
29277
  date?: string;
29168
29278
  fulfillment_types?: ("delivery" | "pickup" | "dinein")[];
29169
29279
  /** @description Menu type slugs, for example `vegan` or `meat-fish`. */
@@ -29371,7 +29481,7 @@ interface operations {
29371
29481
  /** @description Only products created within this many days. */
29372
29482
  created_within_days?: number;
29373
29483
  cuisine_tags?: string[];
29374
- /** @description Only products servable on this store-local date (YYYY-MM-DD), within the next 60 days. Advisory: add-to-cart is the authority. */
29484
+ /** @description The delivery date the reader has chosen (YYYY-MM-DD). A hint, not a filter: products that cannot be delivered that day are still listed and counted, and each result's `servable_dates` says whether it can. Add-to-cart is the authority. */
29375
29485
  date?: string;
29376
29486
  fulfillment_types?: ("delivery" | "pickup" | "dinein")[];
29377
29487
  /** @description Menu type slugs, for example `vegan` or `meat-fish`. */
@@ -44851,6 +44961,84 @@ interface operations {
44851
44961
  };
44852
44962
  };
44853
44963
  };
44964
+ visits_create: {
44965
+ parameters: {
44966
+ query?: never;
44967
+ header?: never;
44968
+ path?: never;
44969
+ cookie?: never;
44970
+ };
44971
+ requestBody: {
44972
+ content: {
44973
+ "application/json": components["schemas"]["VisitInput"];
44974
+ "application/x-www-form-urlencoded": components["schemas"]["VisitInput"];
44975
+ "multipart/form-data": components["schemas"]["VisitInput"];
44976
+ };
44977
+ };
44978
+ responses: {
44979
+ /** @description Recorded, bots included. No body. */
44980
+ 204: {
44981
+ headers: {
44982
+ [name: string]: unknown;
44983
+ };
44984
+ content?: never;
44985
+ };
44986
+ /** @description Possible error codes include `VALIDATION_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
44987
+ 400: {
44988
+ headers: {
44989
+ [name: string]: unknown;
44990
+ };
44991
+ content: {
44992
+ "application/json": components["schemas"]["APIErrorEnvelope"];
44993
+ };
44994
+ };
44995
+ /** @description Possible error codes include `UNAUTHORIZED`. Use `x-error-codes` for machine-readable retryability metadata. */
44996
+ 401: {
44997
+ headers: {
44998
+ [name: string]: unknown;
44999
+ };
45000
+ content: {
45001
+ "application/json": components["schemas"]["APIErrorEnvelope"];
45002
+ };
45003
+ };
45004
+ /** @description Possible error codes include `FORBIDDEN`. Use `x-error-codes` for machine-readable retryability metadata. */
45005
+ 403: {
45006
+ headers: {
45007
+ [name: string]: unknown;
45008
+ };
45009
+ content: {
45010
+ "application/json": components["schemas"]["APIErrorEnvelope"];
45011
+ };
45012
+ };
45013
+ /** @description Possible error codes include `NOT_FOUND`. Use `x-error-codes` for machine-readable retryability metadata. */
45014
+ 404: {
45015
+ headers: {
45016
+ [name: string]: unknown;
45017
+ };
45018
+ content: {
45019
+ "application/json": components["schemas"]["APIErrorEnvelope"];
45020
+ };
45021
+ };
45022
+ /** @description Possible error codes include `RATE_LIMITED`. Use `x-error-codes` for machine-readable retryability metadata. */
45023
+ 429: {
45024
+ headers: {
45025
+ [name: string]: unknown;
45026
+ };
45027
+ content: {
45028
+ "application/json": components["schemas"]["APIErrorEnvelope"];
45029
+ };
45030
+ };
45031
+ /** @description Possible error codes include `INTERNAL_ERROR`. Use `x-error-codes` for machine-readable retryability metadata. */
45032
+ 500: {
45033
+ headers: {
45034
+ [name: string]: unknown;
45035
+ };
45036
+ content: {
45037
+ "application/json": components["schemas"]["APIErrorEnvelope"];
45038
+ };
45039
+ };
45040
+ };
45041
+ };
44854
45042
  webhooks_stripe_subscriptions_create: {
44855
45043
  parameters: {
44856
45044
  query?: never;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@poweredbysous/storefront-all-sdk",
3
- "version": "4.16.0",
3
+ "version": "4.18.0",
4
4
  "description": "Type-safe TypeScript SDK for all SOUS Storefront Backend endpoints",
5
5
  "license": "UNLICENSED",
6
6
  "private": false,