/** * This file was auto-generated by openapi-typescript and ts-morph. * Do not make direct changes to the file. */ export interface paths { readonly "/carts": { readonly parameters: { readonly query?: never; readonly header: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept: components["parameters"]["Accept"]; }; readonly path?: never; readonly cookie?: never; }; /** * Create a Cart * @description Creates a **Cart**. * * **Required Fields** * * |Field|Details| * |-|-| * |`line_item`|Specifies a line item.| * |`custom_items`|Specifies a custom item. Only required if adding a custom item to the cart.| * |`gift_certificates`|Specifies a gift certificate. Only required if adding a gift certificate to the cart.| * * **Usage Notes** * * * A **cart** `id` (UUID) is returned in the response. * * A **cart** `id` is the same as a **checkout** `id`. * * A cart can be created by adding an existing **catalog item** or a **custom item**. * * Carts are valid for **30 days** from the **last modification** (this includes creating the cart or editing the cart). * * If a product has modifiers, use the `option_selections` array to describe the **modifier** selection(s). * * The format and data type of a cart’s `option_value` are defined by the `value_data` object of a product’s [variant option value](/docs/rest-catalog/product-variant-options/values), [modifier value](/docs/rest-catalog/product-modifiers/values), or a combination of both. * * Redirect URLs can only be generated from carts that were created using the **REST Management API**. * * To get cart `redirect_urls` in the response, append the following query parameter to the request URL: `include=redirect_urls`. Redirect URLs point to either a shared checkout domain or a channel-specific domain, depending on the storefront configuration. * * To restore a cart that was created by a shopper or through a Storefront API, first recreate the cart using the **REST Management API**. * * To get cart `promotions` in the response, append the following query parameter to the request URL: `include=promotions.banners`. */ readonly post: operations["createCart"]; }; readonly "/carts/{cartId}/items": { readonly parameters: { readonly query?: never; readonly header: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept: components["parameters"]["Accept"]; readonly "Content-Type": components["parameters"]["ContentType"]; }; readonly path: { /** @description The identifier of a specific cart. */ readonly cartId: components["parameters"]["cartId"]; }; readonly cookie?: never; }; /** * Add Cart Line Items * @description Adds line item to the *Cart*. * * **Usage Notes** * * To add a custom item use `custom_items`. * * By default, overriding a product's list_price makes it ineligible for V3 product-level promotions. In **Store Settings** under **Promotions and Coupons** in the control panel, you can change this behavior to allow promotions on overridden prices. * * If a product has modifiers, omit the `variant_id` and instead use the `option_selections` array to describe both the **variant** and the **modifier** selections. * * To prevent lost updates due to concurrent requests overriding changes made by others, it is recommended to enable optimistic concurrency control by including the `version` field in the request payload. If the provided version does not match the version on the server, a conflict error will be returned, which the client can handle accordingly. */ readonly post: operations["addCartLineItems"]; }; readonly "/carts/{cartId}/redirect_urls": { readonly parameters: { readonly query?: never; readonly header: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept: components["parameters"]["Accept"]; readonly "Content-Type": components["parameters"]["ContentType"]; }; readonly path: { /** @description The identifier of a specific cart. */ readonly cartId: components["parameters"]["cartId"]; }; readonly cookie?: never; }; /** * Create Cart Redirect URL * @description Creates a **Cart** redirect URL for redirecting a shopper to an already created cart using the `cartId`. * * **Usage Notes** * * * To use redirect URLs, first create the cart using the REST Management API or GraphQL Storefront API. * * Redirect URLs can also be created with **Create a Cart** requests by appending `include=redirect_urls`. * * A **Carts** redirect URL is valid for 30 days and may only be used once. * * Redirect URLs point to either a shared checkout domain or a channel-specific domain, depending on the storefront configuration. * * Once a redirect URL has been visited, it will be invalidated and cannot be used again. * * If your application requires URLs to be visited more than once, consider generating a fresh one each time you need to restore a cart, and redirecting to the URL from your own application. * * To restore a cart that was created on the storefront, either by a shopper or a Storefront API, first recreate the cart using the **REST Management API**. * * When redirecting the shopper, you can add a set of `query_params` to the URL. The `query_params` feature allows passing additional information to the redirect URL. */ readonly post: operations["createCartRedirectURL"]; }; readonly "/carts/{cartId}/items/{itemId}": { readonly parameters: { readonly query?: never; readonly header: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept: components["parameters"]["Accept"]; }; readonly path: { /** @description The identifier of a specific cart. */ readonly cartId: components["parameters"]["cartId"]; readonly itemId: string; }; readonly cookie?: never; }; /** * Update Cart Line Item * @description Updates an existing, single line item in the *Cart*. * * **Notes** * * Currently, only updating `list_price` and `quantity` are supported. By default, overriding a product's list_price makes it ineligible for V3 product-level promotions. In **Store Settings** under **Promotions and Coupons** in the control panel, you can change this behavior to allow promotions on overridden prices. * * If the product has modifiers, omit the `variant_id` and instead use the `option_selections` array to describe both the **variant** and the **modifier** selections. * * If a variant needs to be changed or updated, the product will need to be removed and re-added to the cart with the correct variants using the **Add Cart Line Items** endpoint. * * `custom_items` cannot be updated via the API at this time. To update your cart, add a new updated custom item and delete the outdated one. If your cart contains only one line item, perform the add operation before the delete operation. * * Deleting all line items from the cart will invalidate the cart. * * To prevent lost updates due to concurrent requests overriding changes made by others, it is recommended to enable optimistic concurrency control by including the `version` field in the request payload. If the provided version does not match the version on the server, a conflict error will be returned, which the client can handle accordingly. */ readonly put: operations["updateCartLineItem"]; /** * Delete Cart Line Item * @description Deletes a *Cart* line item. * * **Notes** * * Removing the last `line_item` in the *Cart* deletes the *Cart*. * * To prevent lost updates due to concurrent requests overriding changes made by others, it is recommended to enable optimistic concurrency control by including the `version` field in the request payload. If the provided version does not match the version on the server, a conflict error will be returned, which the client can handle accordingly. */ readonly delete: operations["deleteCartLineItem"]; }; readonly "/carts/{cartId}": { readonly parameters: { readonly query?: never; readonly header: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept: components["parameters"]["Accept"]; }; readonly path: { /** @description The identifier of a specific cart. */ readonly cartId: components["parameters"]["cartId"]; }; readonly cookie?: never; }; /** * Get a Cart * @description Returns a storeʼs *Cart*. */ readonly get: operations["getCart"]; /** * Update Customer ID * @description Updates a *Cartʼs* `customer_id`. * * **Notes** * * Changing the *Cart* `customer_id` will remove any promotions or shipping calculations on the *Cart*. These are tied to the customer depending on cart conditions and any customer groups. * * To prevent lost updates due to concurrent requests overriding changes made by others, it is recommended to enable optimistic concurrency control by including the `version` field in the request payload. If the provided version does not match the version on the server, a conflict error will be returned, which the client can handle accordingly. */ readonly put: operations["updateCart"]; /** * Delete a Cart * @description Deletes a *Cart*. Once a *Cart* has been deleted it can’t be recovered. */ readonly delete: operations["deleteCart"]; }; readonly "/carts/settings": { readonly parameters: { readonly query?: never; readonly header: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept: components["parameters"]["Accept"]; }; readonly path?: never; readonly cookie?: never; }; /** * Get Global Cart Settings * @description Returns the global cart settings of a store. * * ### OAuth scopes * * | UI Name | Permission | Parameter | * |:--------|:-----------|:----------| * |Information & Settings | modify | `store_v2_information`| * |Information & Settings | read-only| `store_v2_information`| */ readonly get: operations["getGlobalCartSettings"]; /** * Update Global Cart Settings * @description Update the global cart settings of a store. * *Authentication* * ### OAuth scopes * * | UI Name | Permission | Parameter | * |:--------|:-----------|:----------| * |Information & Settings | modify | `store_v2_information`| * |Information & Settings | read-only| `store_v2_information`| */ readonly put: operations["updateGlobalCartSettings"]; }; readonly "/carts/settings/channels/{channel_id}": { readonly parameters: { readonly query?: never; readonly header: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept: components["parameters"]["Accept"]; }; readonly path: { /** @description The channel ID of the settings overrides. * * ### OAuth scopes * * | UI Name | Permission | Parameter | * |:--------|:-----------|:----------| * |Information & Settings | modify | `store_v2_information`| * |Information & Settings | read-only| `store_v2_information`| */ readonly channel_id: number; }; readonly cookie?: never; }; /** * Get Channel Cart Settings * @description Returns the per-channel overrides for the cart settings of a store. * * ### OAuth scopes * * | UI Name | Permission | Parameter | * |:--------|:-----------|:----------| * |Information & Settings | modify | `store_v2_information`| * |Information & Settings | read-only| `store_v2_information`| */ readonly get: operations["getChannelCartSettings"]; /** * Update Channel Cart Settings * @description Update the per-channel overrides for the cart settings of a store. * * ### OAuth scopes * * | UI Name | Permission | Parameter | * |:--------|:-----------|:----------| * |Information & Settings | modify | `store_v2_information`| * |Information & Settings | read-only| `store_v2_information`| */ readonly put: operations["updateChannelCartSettings"]; }; readonly "/carts/{cart_id}/metafields": { readonly parameters: { readonly query?: never; readonly header: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept: components["parameters"]["Accept"]; }; readonly path: { /** @description The ID of the `Cart` to which the transactions belong. */ readonly cart_id: components["parameters"]["cart_id"]; }; readonly cookie?: never; }; /** * Get Cart Metafields * @description Get a cart's metafields. */ readonly get: operations["getCartMetafields"]; /** * Create a Cart Metafield * @description Create a cart `Metafield`. * * If you create an order from a Cart, you can continue referencing the Cart Metafields even if you delete the original Cart. Use the `cart_id` field on the Order to construct the Cart Metafield endpoint. * */ readonly post: operations["createCartMetafield"]; }; readonly "/carts/{cart_id}/metafields/{metafield_id}": { readonly parameters: { readonly query?: never; readonly header: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept: components["parameters"]["Accept"]; }; readonly path: { /** @description The ID of the `Cart` to which the transactions belong. */ readonly cart_id: components["parameters"]["cart_id"]; /** @description The unique ID of the subject `Metafield`. */ readonly metafield_id: number; }; readonly cookie?: never; }; /** * Get a Cart Metafield * @description Gets a cart metafield. */ readonly get: operations["getCartMetafield"]; /** * Update a Cart Metafield * @description Update a `Metafield`, by `cart_id`. * */ readonly put: operations["updateCartMetafield"]; /** * Delete a Metafield * @description Deletes a `Metafield`. * */ readonly delete: operations["deleteCartMetafield"]; }; readonly "/carts/metafields": { readonly parameters: { readonly query?: never; readonly path?: never; readonly cookie?: never; }; /** * Get All Cart Metafields * @description Get all cart metafields. */ readonly get: operations["getCartsMetafields"]; /** * Update multiple Metafields * @description Create multiple metafields. */ readonly put: operations["updateCartsMetafields"]; /** * Create multiple Metafields * @description Create multiple metafields. */ readonly post: operations["createCartsMetafields"]; /** * Delete multiple Metafields * @description Delete all cart metafields. */ readonly delete: operations["deleteCartsMetafields"]; }; } export type webhooks = Record; export interface components { schemas: { /** Cart Update Request */ readonly CartUpdateRequest: { /** Line Item Request Data */ readonly line_item?: { readonly quantity: number; readonly product_id: number; /** @description The variant ID. Required if the product has variants. */ readonly variant_id: number; readonly list_price?: number; readonly option_selections?: readonly { readonly option_id?: number; readonly option_value?: string; }[]; }; /** Line Item Gift Certificate Request Data */ readonly gift_certificate?: { /** @description Given name for the gift certificate line item. */ readonly name: string; /** * @description The theme of the gift certificate. * @enum {string} */ readonly theme: "Birthday" | "Boy" | "Celebration" | "Christmas" | "General" | "Girl"; readonly amount: number; readonly quantity: number; /** Contact Entity */ readonly sender: { readonly name?: string; readonly email?: string; }; /** Contact Entity */ readonly recipient: { readonly name?: string; readonly email?: string; }; /** @description Message shown to recipient, as provided by sender. */ readonly message?: string; }; }; /** Cart Create Post Data */ readonly CartCreatePostData: { readonly customer_id?: number; readonly line_items?: readonly (components["schemas"]["cart_PostVariant"] | components["schemas"]["cart_PostModifier"])[]; readonly custom_items?: components["schemas"]["cart_PostCustomItem"]; readonly gift_certificates?: readonly { /** @description Given name for the gift certificate line item. */ readonly name: string; /** * @description The theme of the gift certificate. * @enum {string} */ readonly theme: "Birthday" | "Boy" | "Celebration" | "Christmas" | "General" | "Girl"; readonly amount: number; readonly quantity: number; /** Contact Entity */ readonly sender: { readonly name?: string; readonly email?: string; }; /** Contact Entity */ readonly recipient: { readonly name?: string; readonly email?: string; }; /** @description Message shown to recipient, as provided by sender. */ readonly message?: string; }[]; /** @description The Channel ID. If no channel is specified, defaults to 1. */ readonly channel_id?: number; readonly currency?: { /** * Format: ISO-4217 * @description The [transactional currency](/docs/rest-management/currencies#definitions) code for the cart, formatted as an [ISO-4217](https://www.iso.org/iso-4217-currency-codes.html) string. This code is required when multi-currency is enabled. Passing a non-transactional display currency will result in a `400` error. * @example usd */ readonly code?: string; }; /** * Format: ISO-639 * @description The locale of the cart. Accepts strings of format `xx` or `xx-YY`. Uses the [ISO-639 standard](https://www.iso.org/iso-639-language-codes.html) format. * @example en-US */ readonly locale?: string; }; /** Cart Request Data */ readonly CartRequestData: { readonly line_items?: readonly { readonly quantity: number; readonly product_id: number; /** @description The Variant ID. Required if the product has variants. */ readonly variant_id: number; readonly list_price?: number; readonly option_selections?: readonly { readonly option_id?: number; readonly option_value?: string; }[]; }[]; readonly gift_certificates?: readonly { /** @description Given name for gift certificate line item. */ readonly name: string; /** * @description The theme of the gift certificate. * @enum {string} */ readonly theme: "Birthday" | "Boy" | "Celebration" | "Christmas" | "General" | "Girl"; readonly amount: number; readonly quantity: number; /** Contact Entity */ readonly sender: { readonly name?: string; readonly email?: string; }; /** Contact Entity */ readonly recipient: { readonly name?: string; readonly email?: string; }; /** @description Message shown to recipient, as provided by sender. */ readonly message?: string; }[]; /** @description The Channel ID. If no channel is specified, this defaults to 1. */ readonly channel_id?: number; }; /** Cart Update Put Request Data */ readonly CartUpdatePutRequestData: { readonly customer_id?: number; /** * @description The cart version that you expect to apply the updates. If the provided version doesn't match the current cart version, you will receive a conflict error. This field is optional; if not provided, optimistic concurrency control will not apply. * @example 1 */ readonly version?: number; }; /** Line Item Request Data */ readonly LineItemRequestData: { readonly quantity: number; readonly product_id: number; /** @description Variant ID. Required if the product has variants. */ readonly variant_id: number; readonly list_price?: number; readonly option_selections?: readonly { readonly option_id?: number; readonly option_value?: string; }[]; }; /** Product Option Selection */ readonly ProductOptionSelection: { readonly option_id?: number; readonly option_value?: string; }; /** Line Item Gift Certificate Request Data */ readonly LineItemGiftCertificateRequestData: { /** @description Given name for gift certificate line item. */ readonly name: string; /** * @description The theme of the gift certificate. * @enum {string} */ readonly theme: "Birthday" | "Boy" | "Celebration" | "Christmas" | "General" | "Girl"; readonly amount: number; readonly quantity: number; /** Contact Entity */ readonly sender: { readonly name?: string; readonly email?: string; }; /** Contact Entity */ readonly recipient: { readonly name?: string; readonly email?: string; }; /** @description Message shown to recipient, as provided by sender. */ readonly message?: string; }; /** * Cart_Full * @description A cart contains a collection of items, prices, discounts, etc. It does not contain customer-related data. */ readonly Cart_Full: { /** * Format: UUID * @description Cart ID, provided after creating a cart with a POST request. */ readonly id?: string; /** @description ID of the customer to which the cart belongs. */ readonly customer_id?: number; /** @description The channel ID. If no channel is specified, defaults to 1. */ readonly channel_id?: number; /** @description The cart’s email. This is the same email that is used in the billing address. */ readonly email?: string; /** * Currency * @description The currency. This is the same for both the cart and its subsequent checkout. */ readonly currency?: { /** * Format: ISO-4217 * @description The [transactional currency](/docs/rest-management/currencies#definitions) code for the cart, formatted as an [ISO-4217](https://www.iso.org/iso-4217-currency-codes.html) string. * @example usd */ readonly code?: string; }; readonly tax_included?: boolean; /** @description Sum of cart line-item amounts before cart-level discounts, coupons, or taxes. */ readonly base_amount?: number; /** @description Order-based discounted amount only - Excludes coupon discounts and product-based discounts. */ readonly discount_amount?: number; /** @description The entered value represents the order level manual discount. */ readonly manual_discount_amount?: number; /** @description Sum of cart line-item amounts minus cart-level discounts and coupons. This amount includes taxes (where applicable). */ readonly cart_amount?: number; readonly coupons?: readonly components["schemas"]["AppliedCoupon"][]; readonly discounts?: readonly { /** * @description ID of the applied discount. * @example coupon */ readonly id?: string; /** @description The discounted amount. */ readonly discounted_amount?: number; }[]; readonly line_items?: components["schemas"]["LineItemsGet"]; /** * Format: ISO-8601 * @description Time when the cart was created. */ readonly created_time?: string; /** * Format: ISO-8601 * @description Time when the cart was last updated. */ readonly updated_time?: string; /** * Format: ISO-639 * @description Locale of the cart. Accepts strings of format `xx` or `xx-YY`. Uses the [ISO-639 standard](https://www.iso.org/iso-639-language-codes.html) format. */ readonly locale?: string; /** @description This is available only when "include=promotions.banners" is presented in the URL. */ readonly promotions?: { /** Banner */ readonly banners?: { /** @description ID of the promotion. */ readonly id?: string; /** @description Type of the banner. */ readonly type?: string; /** @description An array of the locations where the banner will display. */ readonly page?: readonly string[]; /** @description Text of the banner. */ readonly text?: string; }; }; /** * @description The current version of the cart increments with each successful update. You can use it to enable optimistic concurrency control for subsequent updates. * @example 1 */ readonly version?: number; }; /** * Currency * @description The currency. This is the same for both the cart and its subsequent checkout. */ readonly Currency: { /** * Format: ISO-4217 * @description ISO-4217 currency code. (See: https://www.iso.org/iso-4217-currency-codes.html.) */ readonly code?: string; }; /** * line_items * @description Request body for `PUT` or `POST` requests. */ readonly LineItems: { readonly physical_items: readonly components["schemas"]["ItemPhysical"][]; readonly digital_items: readonly components["schemas"]["ItemDigital"][]; readonly gift_certificates?: readonly components["schemas"]["ItemGiftCertificate"][]; readonly custom_items?: readonly components["schemas"]["ItemCustom"][]; }; /** Item Gift Certificate */ readonly ItemGiftCertificate: { readonly id?: string; /** @description Name provided for the gift certificate that will appear in the control panel. */ readonly name?: string; /** * @description The theme of the gift certificate. * @enum {string} */ readonly theme: "Birthday" | "Boy" | "Celebration" | "Christmas" | "General" | "Girl"; /** @description Value must be between 1.00 and 1,000.00 in the store’s default currency. */ readonly amount: number; readonly is_taxable?: boolean; /** Contact Entity */ readonly sender: { readonly name?: string; readonly email?: string; }; /** Contact Entity */ readonly recipient: { readonly name?: string; readonly email?: string; }; /** @description Limited to 200 characters. */ readonly message?: string; }; /** Item Gift Certificate */ readonly ItemGiftCertificateGet: { readonly id?: string; /** @description Name provided for the gift certificate that will appear in the control panel. */ readonly name?: string; /** @description The theme of the gift certificate. The following options are available:`Birthday`, `Boy`, `Celebration`, `Christmas`, `General`, and `Girl`. */ readonly theme?: string; /** @description Value must be between 1.00 and 1,000.00 in the store’s default currency. */ readonly amount?: number; readonly taxable?: boolean; /** Contact Entity */ readonly sender?: { readonly name?: string; readonly email?: string; }; /** Contact Entity */ readonly recipient?: { readonly name?: string; readonly email?: string; }; /** @description The message included in the gift certificate is limited to 200 characters. */ readonly message?: string; }; /** Contact Entity */ readonly ContactEntity: { readonly name?: string; readonly email?: string; }; /** Digital Item */ readonly ItemDigital: { /** * @description The line-item ID. * @example 6e193ce6-f327-4dcc-b75e-72cf6738525e */ readonly id?: string; /** * @description The ID of the variant. Required in the /PUT or /POST request if the product has variants. * @example 358 */ readonly variant_id: number; /** * @description The ID of the product. Required in a /POST request. * @example 12 */ readonly product_id: number; /** * @description SKU of the variant. * @example SMGREEN */ readonly sku?: string; /** * @description The item’s product name. * @example T-Shirt */ readonly name?: string; /** * Format: uri * @description The product URL. * @example http://your-store-url.mybigcommerce.com/your-product/ */ readonly url?: string; /** * @description Quantity of this item in the cart. * @example 5 */ readonly quantity: number; /** * @description Boolean value that specifies whether the item is taxable. * @example false */ readonly is_taxable?: boolean; /** * Format: uri * @description Image of the product or variant. * @example https://pathtoproductimage/ProductDefault.png */ readonly image_url?: string; readonly discounts?: readonly { readonly id?: string | number; /** @description The discounted amount. */ readonly discounted_amount?: number; }[]; readonly coupons?: readonly { /** @description Required in a /POST request. */ readonly coupons?: { /** @description The coupon code. */ readonly coupon_code: { /** * @description ID of the coupon. * @example 6 */ readonly id?: number; /** * @description The coupon code. Required in a /POST request. * @example KV56053388J */ readonly code?: string; /** * @description Name given to the coupon in the control panel. * @example Percentage off */ readonly name?: string; /** * @description The discount type. * * - type 0: per_item_discount * - type 1: percentage_discount * - type 2: per_total_discount * - type 3: shipping_discount * - type 4: free_shipping * @enum {integer} */ readonly discountType?: 0 | 1 | 2 | 3 | 4; /** * @description The amount of the discount based on the coupon. For example, 3 percent off will show a 3. * @example 3 */ readonly discountAmount?: number; /** * @description Returns 0 if no expiration date has been set. * @example 0 */ readonly expiresDate?: number; /** * @description The total amount of all discounts applied to the cart. * @example 4.19 */ readonly totalDiscount?: number; }; }; }[]; /** * @description The total value of all discounts applied to this item. This includes coupons and cart-level discounts. * @example 4 */ readonly discount_amount?: number; /** @description The total value of all coupons applied to this item. */ readonly coupon_amount?: number; /** @description An item’s original price is the same as the product default price in the admin panel. */ readonly original_price?: number; /** @description The net item price before discounts and coupons. BigCommerce derives an item’s list price from the product default price or, if applicable, the sale price configured in the admin panel. */ readonly list_price?: number; /** @description Item’s price after all discounts are applied. (The final price before tax calculation.) */ readonly sale_price?: number; /** @description List price of the item multiplied by the quantity. */ readonly extended_list_price?: number; /** @description Sale price of the item multiplied by the quantity. */ readonly extended_sale_price?: number; /** @description The list of selected options for this product. */ readonly options?: readonly { /** @description The product option name; for example, Color or Size. */ readonly name?: string; /** @description The product option identifier. */ readonly nameId?: number; /** @description The product option value; for example, Red or Medium. */ readonly value?: string; /** * @description The product option value identifier in number format. * @example 128 */ readonly valueId?: number; }[]; } & { /** @description URLs to download all product files. */ readonly download_file_urls?: readonly string[]; /** * Format: url * @description The URL for the combined downloads page. */ readonly download_page_url?: string; /** @description Specifies the combined download size of all files in human-readable style; for example, `30MB`. */ readonly download_size?: string; }; /** Digital Item Response */ readonly ItemDigitalGet: { /** * @description The line-item ID. * @example 6e193ce6-f327-4dcc-b75e-72cf6738525e */ readonly id?: string; /** @description Bundled items will have the ID of their parent item. */ readonly parent_id?: string; /** * @description The ID of the variant. Required in the /PUT or /POST request if the product has variants. * @example 358 */ readonly variant_id?: number; /** * @description The ID of the product. Required in a /POST request. * @example 12 */ readonly product_id?: number; /** * @description SKU of the variant. * @example SMGREEN */ readonly sku?: string; /** * @description The item’s product name. * @example T-Shirt */ readonly name?: string; /** * Format: uri * @description The product URL. * @example http://your-store-url.mybigcommerce.com/your-product/ */ readonly url?: string; /** * @description Quantity of this item in the cart. * @example 5 */ readonly quantity?: number; /** * @description Boolean value that specifies whether the item is taxable. * @example false */ readonly taxable?: boolean; /** * Format: uri * @description Image of the product or variant. * @example https://pathtoproductimage/ProductDefault.png */ readonly image_url?: string; readonly discounts?: readonly { readonly id?: string | number; /** @description The discounted amount. */ readonly discounted_amount?: number; }[]; readonly coupons?: number | readonly { /** * @description ID of the coupon. * @example 6 */ readonly id?: number; /** * @description The coupon code. Required in a /POST request. * @example KV56053388J */ readonly code: string; /** * @description Name given to the coupon in the control panel. * @example Percentage off */ readonly name?: string; /** * @description The discount type. * - type 0: per_item_discount * - type 1: percentage_discount * - type 2: per_total_discount * - type 3: shipping_discount * - type 4: free_shipping * * @example 3 * @enum {integer} */ readonly discountType?: 0 | 1 | 2 | 3 | 4; /** * @description The amount of the discount based on the coupon. For example, 3 percent off will show a 3. * @example 3 */ readonly discountAmount?: number; /** * @description Returns 0 if no expiration date has been set. * @example 0 */ readonly expiresDate?: number; /** * @description The total amount of all discounts applied to the cart. * @example 4.19 */ readonly totalDiscount?: number; }[]; /** * @description The total value of all discounts applied to this item. This includes coupons and cart-level discounts. * @example 4 */ readonly discount_amount?: number; /** @description The total value of all coupons applied to this item. */ readonly coupon_amount?: number; /** @description An item’s original price is the same as the product default price in the admin panel. */ readonly original_price?: number; /** @description The net item price before discounts and coupons. BigCommerce derives an item’s list price from the product default price or, if applicable, the sale price configured in the admin panel. */ readonly list_price?: number; /** @description Item’s price after all discounts are applied. (The final price before tax calculation.) */ readonly sale_price?: number; /** @description List price of the item multiplied by the quantity. */ readonly extended_list_price?: number; /** @description Sale price of the item multiplied by the quantity. */ readonly extended_sale_price?: number; /** * @description Whether or not a physical product requires shipping. * @example false */ readonly is_require_shipping?: boolean; /** * @description Whether or not you can change or remove the item from the cart. Items that are immutable include those added automatically by promotions. * @example true */ readonly is_mutable?: boolean; /** * @description Whether or not a promotion added an additional item. * @example false */ readonly added_by_promotion?: boolean; /** @description URLs to download all product files. */ readonly download_file_urls?: readonly string[]; /** * Format: url * @description The URL for the combined downloads page. */ readonly download_page_url?: string; /** @description Specifies the combined download size of all files in human-readable style; for example, `30MB`. */ readonly download_size?: string; }; readonly ItemPhysical: { /** * @description The line-item ID. * @example 6e193ce6-f327-4dcc-b75e-72cf6738525e */ readonly id?: string; /** * @description The ID of the variant. Required in the /PUT or /POST request if the product has variants. * @example 358 */ readonly variant_id: number; /** * @description The ID of the product. Required in a /POST request. * @example 12 */ readonly product_id: number; /** * @description SKU of the variant. * @example SMGREEN */ readonly sku?: string; /** * @description The item’s product name. * @example T-Shirt */ readonly name?: string; /** * Format: uri * @description The product URL. * @example http://your-store-url.mybigcommerce.com/your-product/ */ readonly url?: string; /** * @description Quantity of this item in the cart. * @example 5 */ readonly quantity: number; /** * @description Boolean value that specifies whether the item is taxable. * @example false */ readonly is_taxable?: boolean; /** * Format: uri * @description Image of the product or variant. * @example https://pathtoproductimage/ProductDefault.png */ readonly image_url?: string; readonly discounts?: readonly { readonly id?: string | number; /** @description The discounted amount. */ readonly discounted_amount?: number; }[]; readonly coupons?: readonly { /** @description Required in a /POST request. */ readonly coupons?: { /** @description The coupon code. */ readonly coupon_code: { /** * @description The ID of the coupon. * @example 6 */ readonly id?: number; /** * @description The coupon code. Required in a /POST request. * @example KV56053388J */ readonly code?: string; /** * @description Name given to the coupon in the control panel. * @example Percentage off */ readonly name?: string; /** * @description The discount type. * * - type 0: per_item_discount * - type 1: percentage_discount * - type 2: per_total_discount * - type 3: shipping_discount * - type 4: free_shipping * @enum {integer} */ readonly discountType?: 0 | 1 | 2 | 3 | 4; /** * @description The amount of the discount based on the coupon. For example, 3 percent off will show a 3. * @example 3 */ readonly discountAmount?: number; /** * @description Returns 0 if no expiration date is set. * @example 0 */ readonly expiresDate?: number; /** * @description The total amount of all discounts applied to the cart. * @example 4.19 */ readonly totalDiscount?: number; }; }; }[]; /** * @description The total value of all discounts applied to this item. This includes coupons and cart-level discounts. * @example 4 */ readonly discount_amount?: number; /** @description The total value of all coupons applied to this item. */ readonly coupon_amount?: number; /** @description An item’s original price is the same as the product default price in the admin panel. */ readonly original_price?: number; /** @description The net item price before discounts and coupons are applied. BigCommerce derives an item’s list price from the product default price or, if applicable, the sale price configured in the admin panel. */ readonly list_price?: number; /** @description Price of the item after all discounts are applied. (The final price before tax calculation.) */ readonly sale_price?: number; /** @description List price of the item multiplied by the quantity. */ readonly extended_list_price?: number; /** @description Sale price of the item multiplied by the quantity. */ readonly extended_sale_price?: number; /** @description The list of selected options for this product. */ readonly options?: readonly { /** @description The product option name; for example, Color or Size. */ readonly name?: string; /** @description The product option identifier. */ readonly nameId?: number; /** @description The product option value; for example, Red or Medium. */ readonly value?: string; /** * @description The product option value identifier in number format. * @example 128 */ readonly valueId?: number; }[]; } & unknown; /** Base Item */ readonly BaseItem: { /** * @description The line-item ID. * @example 6e193ce6-f327-4dcc-b75e-72cf6738525e */ readonly id?: string; /** * @description The ID of the variant. Required in the /PUT or /POST request if the product has variants. * @example 358 */ readonly variant_id: number; /** * @description The ID of the product. Required in a /POST request. * @example 12 */ readonly product_id: number; /** * @description SKU of the variant. * @example SMGREEN */ readonly sku?: string; /** * @description The itemʼs product name. * @example T-Shirt */ readonly name?: string; /** * Format: uri * @description The product URL. * @example http://your-store-url.mybigcommerce.com/your-product/ */ readonly url?: string; /** * @description Quantity of this item in the cart. * @example 5 */ readonly quantity: number; /** * @description Boolean value that specifies whether the item is taxable. * @example false */ readonly is_taxable?: boolean; /** * Format: uri * @description Image of the product or variant. * @example https://pathtoproductimage/ProductDefault.png */ readonly image_url?: string; readonly discounts?: readonly { /** * @description ID of the applied discount. * @example coupon */ readonly id?: string | number; /** @description The discounted amount. */ readonly discounted_amount?: number; }[]; readonly coupons?: readonly { /** @description Required in a /POST request. */ readonly coupons?: { /** @description The coupon code. */ readonly coupon_code: { /** * @description The ID of the coupon. * @example 6 */ readonly id?: number; /** * @description The coupon code. Required in a /POST request. * @example KV56053388J */ readonly code?: string; /** * @description Name given to the coupon in the control panel. * @example Percentage off */ readonly name?: string; /** @description The discount type. * * - type 0: per_item_discount * - type 1: percentage_discount * - type 2: per_total_discount * - type 3: shipping_discount * - type 4: free_shipping * enum: * - 0 * - 1 * - 2 * - 3 * - 4 */ readonly discountType?: number; /** * @description The amount of the discount based on the coupon. For example, 3 percent off will show a 3. * @example 3 */ readonly discountAmount?: number; /** * @description Returns 0 if no expiration date has been set. * @example 0 */ readonly expiresDate?: number; /** * @description The total amount of all discounts applied to the cart. * @example 4.19 */ readonly totalDiscount?: number; }; }; }[]; /** * @description The total value of all discounts applied to this item. This includes coupons and cart level discounts. * @example 4 */ readonly discount_amount?: number; /** @description The total value of all coupons applied to this item. */ readonly coupon_amount?: number; /** @description An item’s original price is the same as the product default price in the admin panel. */ readonly original_price?: number; /** @description The net item price before discounts and coupons are applied. BigCommerce derives an item’s list price from the product default price or, if applicable, the sale price configured in the admin panel. */ readonly list_price?: number; /** @description Item’s price after all discounts are applied. (The final price before tax calculation.) */ readonly sale_price?: number; /** @description List price of the item multiplied by the quantity. */ readonly extended_list_price?: number; /** @description Sale price of the item multiplied by the quantity. */ readonly extended_sale_price?: number; /** @description The list of selected options for this product. */ readonly options?: readonly { /** @description The product option name; for example, Color or Size. */ readonly name?: string; /** @description The product option identifier. */ readonly nameId?: number; /** @description The product option value; for example, Red or Medium. */ readonly value?: string; /** * @description The product option value identifier in number format. * @example 128 */ readonly valueId?: number; }[]; }; /** Product Option */ readonly ProductOption: { /** @description The product option name; for example, Color or Size. */ readonly name?: string; /** @description The product option identifier. */ readonly nameId?: number; /** @description The product option value; for example, Red or Medium. */ readonly value?: string; /** * @description The product option value identifier in number format. * @example 128 */ readonly valueId?: number; }; /** * Applied Coupon * @description |Type `int`|Type Name| * |-|-| * |`0`|`per_item_discount`| * |`1`|`percentage_discount`| * |`2`|`per_total_discount`| * |`3`|`shipping_discount`| * |`4`|`free_shipping`| * |`5`|`promotion`| */ readonly AppliedCoupon: { /** @description The coupon code. */ readonly code: string; /** @description The coupon ID. (read-only) */ readonly id?: string; /** * @description Key name to identify the type of coupon. * * type 0: per_item_discount * type 1: percentage_discount * type 2: per_total_discount * type 3: shipping_discount * type 4: free_shipping * type 5: promotion * @enum {string} */ readonly coupon_type?: "0" | "1" | "2" | "3" | "4" | "5"; /** * Format: double * @description The discounted amount applied within a given context. */ readonly discounted_amount?: number; /** * @description Display name of the coupon. * @example 20% Off */ readonly display_name?: string; }; /** Applied Discount */ readonly AppliedDiscount: { /** * @description ID of the applied discount. * @example coupon */ readonly id?: string | number; /** @description The discounted amount. */ readonly discounted_amount?: number; }; /** Gift Wrapping */ readonly GiftWrapping: { readonly name?: string; readonly message?: string; /** Format: float */ readonly amount?: number; }; /** * Item Custom * @description Add a custom item to the shopperʼs cart. * * * Custom items are not added to the catalog. * * The price should be set to match the store settings for taxes. */ readonly ItemCustom: { /** @description ID of the custom item. */ readonly id?: string; /** @description SKU of the custom item. */ readonly sku?: string; /** @description Name of the item. */ readonly name?: string; readonly quantity?: string; /** @description Specifies the price of the item. This value can include or exclude tax, depending on the store setup. */ readonly list_price?: string; }; /** * Item Custom * @description Add a custom item to the shopperʼs cart. * * * Custom items are not added to the catalog. * * The price should be set to match the store settings for taxes. */ readonly ItemCustomGet: { /** @description ID of the custom item. */ readonly id?: string; /** @description SKU of the custom item. */ readonly sku?: string; /** @description Name of the item. */ readonly name?: string; readonly quantity?: string; /** @description Specifies the price of the item. This value can include or exclude tax, depending on the store setup. */ readonly list_price?: string; /** @description List price of the item multiplied by the quantity. */ readonly extended_list_price?: number; /** * Format: uri * @description Image of the product or variant. * @example https://pathtoproductimage/ProductDefault.png */ readonly image_url?: string; }; /** * Item with variant * @description Product with a variant. */ readonly cart_PostVariant: { readonly quantity?: number; readonly product_id?: number; /** @description Optional price override. */ readonly list_price?: number; /** @description Variant ID. Exists only in Catalog V3. */ readonly variant_id?: number; /** @description Optionally, provide a value to override the product name. */ readonly name?: string; readonly gift_wrapping?: { /** * @description Boolean value that specifies whether items whether items should be wrapped together or wrapped individually. * @example true */ readonly wrap_together?: boolean; /** @description Details for the gift wrapping option selected. This can be specified for each line item. */ readonly wrap_details?: readonly { /** * @description Identifier of the gift wrapping option selected. * @example 0 */ readonly id?: number; /** * @description Custom gift message. * @example Happy Birthday */ readonly message?: string; }[]; }; }; /** * Item with modifier * @description Product with a modifier. */ readonly cart_PostModifier: { readonly quantity: number; readonly product_id: number; /** @description Optional price override. */ readonly list_price?: number; /** @description Optionally, provide a value to override the product name. */ readonly name?: string; /** @description Needed for Catalog V2. */ readonly option_selections?: readonly { readonly option_id?: number; readonly option_value?: number; /** @description Override for the selected option or modifier name. */ readonly name?: string; /** @description Override for the selected option value. */ readonly value?: string; readonly nameId?: number; readonly valueId?: number; }[]; }; /** Cart_Line_Item_Update_Put */ readonly Cart_Line_Item_Update_Put: { readonly line_item?: components["schemas"]["cart_PostVariant"] | components["schemas"]["cart_PostModifier"]; readonly gift_certificates?: readonly { /** @description Given name for a gift certificate line item. */ readonly name: string; /** * @description The theme of the gift certificate. * @enum {string} */ readonly theme: "Birthday" | "Boy" | "Celebration" | "Christmas" | "General" | "Girl"; readonly amount: number; readonly quantity: number; /** Contact Entity */ readonly sender: { readonly name?: string; readonly email?: string; }; /** Contact Entity */ readonly recipient: { readonly name?: string; readonly email?: string; }; /** @description Message shown to recipient, as provided by sender. */ readonly message?: string; }[]; readonly custom_items?: components["schemas"]["cart_PostCustomItem"]; /** * @description The cart version that you expect to apply the updates. If the provided version doesn't match the current cart version, you will receive a conflict error. This field is optional; if not provided, optimistic concurrency control will not apply. * @example 1 */ readonly version?: number; }; readonly CartLineItemDelete: { /** * @description The cart version that you expect to apply the updates. If the provided version doesn't match the current cart version, you will receive a conflict error. This field is optional; if not provided, optimistic concurrency control will not apply. * @example 1 */ readonly version?: number; }; /** Redirect_urls_Post */ readonly Redirect_urls_Post: { readonly query_params?: { readonly key?: string; readonly value?: string; }; }; /** Cart_Line_Item_Update_Post */ readonly Cart_Line_Item_Update_Post: { readonly line_items?: readonly components["schemas"]["cart_PostVariant"][] | readonly components["schemas"]["cart_PostModifier"][]; readonly gift_certificates?: readonly { /** @description Given name for gift certificate line item. */ readonly name: string; /** * @description The theme of the gift certificate. * @enum {string} */ readonly theme: "Birthday" | "Boy" | "Celebration" | "Christmas" | "General" | "Girl"; readonly amount: number; readonly quantity: number; /** Contact Entity */ readonly sender: { readonly name?: string; readonly email?: string; }; /** Contact Entity */ readonly recipient: { readonly name?: string; readonly email?: string; }; /** @description Message shown to recipient, as provided by sender. */ readonly message?: string; }[]; readonly custom_items?: components["schemas"]["cart_PostCustomItem"]; /** * @description The cart version that you expect to apply the updates. If the provided version doesn't match the current cart version, you will receive a conflict error. This field is optional; if not provided, optimistic concurrency control will not apply. * @example 1 */ readonly version?: number; }; /** Custom item */ readonly cart_PostCustomItem: readonly { readonly sku?: string; readonly name?: string; readonly quantity?: number; readonly list_price?: number; }[]; /** @description Represents all settings related to the shopping cart functionality of a store. */ readonly CartSettings: { readonly allow_purchasing?: boolean; }; /** @description Represents all settings overrides related to the shopping cart functionality of a store for a channel. */ readonly ChannelCartSettings: { readonly allow_purchasing?: boolean | null; }; readonly ChannelCartSettingsRequest: components["schemas"]["ChannelCartSettings"] & unknown; /** @description The response object of cart settings overrides for a channel. */ readonly ChannelCartSettingsResponse: { readonly data?: components["schemas"]["ChannelCartSettings"]; readonly meta?: components["schemas"]["metaCollection_open"]; }; readonly GlobalCartSettingsRequest: components["schemas"]["CartSettings"] & unknown; /** @description The response object of cart settings at the global level. */ readonly GlobalCartSettingsResponse: { readonly data?: components["schemas"]["CartSettings"]; readonly meta?: components["schemas"]["metaCollection_open"]; }; readonly ErrorResponse: { readonly status?: number; readonly title?: string; readonly type?: string; readonly instance?: string; readonly errors?: { readonly [key: string]: unknown; }; }; /** * LineItemsGet * @description `GET` */ readonly LineItemsGet: { readonly physical_items?: readonly components["schemas"]["ItemPhysicalGet"][]; readonly digital_items?: readonly components["schemas"]["ItemDigitalGet"][]; readonly gift_certificates?: readonly components["schemas"]["ItemGiftCertificateGet"][]; readonly custom_items?: readonly components["schemas"]["ItemCustomGet"][]; }; readonly ItemPhysicalGet: { /** * @description The line-item ID. * @example 6e193ce6-f327-4dcc-b75e-72cf6738525e */ readonly id?: string; /** @description Bundled items will have the ID of their parent item. */ readonly parent_id?: string; /** * @description The ID of the variant. Required in the /PUT or /POST request if the product has variants. * @example 358 */ readonly variant_id: number; /** * @description The ID of the product. Required in a /POST request. * @example 12 */ readonly product_id: number; /** * @description SKU of the variant. * @example SMGREEN */ readonly sku?: string; /** * @description The item’s product name. * @example T-Shirt */ readonly name?: string; /** * Format: uri * @description The product URL. * @example http://your-store-url.mybigcommerce.com/your-product/ */ readonly url?: string; /** * @description Quantity of this item in the cart. * @example 5 */ readonly quantity: number; /** * @description Boolean value that specifies whether the item is taxable. * @example false */ readonly taxable?: boolean; /** * Format: uri * @description Image of the product or variant. * @example https://pathtoproductimage/ProductDefault.png */ readonly image_url?: string; readonly discounts?: readonly { readonly id?: string | number; /** @description The discounted amount. */ readonly discounted_amount?: number; }[]; readonly coupons?: number | readonly { /** * @description ID of the coupon. * @example 6 */ readonly id?: number; /** * @description The coupon code. Required in a /POST request. * @example KV56053388J */ readonly code: string; /** * @description Name given to the coupon in the control panel. * @example Percentage off */ readonly name?: string; /** * @description The discount type. * - type 0: per_item_discount * - type 1: percentage_discount * - type 2: per_total_discount * - type 3: shipping_discount * - type 4: free_shipping * @example 3 * @enum {integer} */ readonly discountType?: 0 | 1 | 2 | 3 | 4; /** * @description The amount of the discount based on the coupon. For example, 3 percent off will show a 3. * @example 3 */ readonly discountAmount?: number; /** * @description Returns 0 if no expiration date has been set. * @example 0 */ readonly expiresDate?: number; /** * @description The total amount of all discounts applied to the cart. * @example 4.19 */ readonly totalDiscount?: number; }[]; /** * @description The total value of all discounts applied to this item. This includes coupons and cart-level discounts. * @example 4 */ readonly discount_amount?: number; /** @description The total value of all coupons applied to this item. */ readonly coupon_amount?: number; /** @description An item’s original price is the same as the product default price in the admin panel. */ readonly original_price?: number; /** @description The net item price before discounts and coupons are applied. BigCommerce derives an item’s list price from the product default price or, if applicable, the sale price configured in the admin panel. To enable v3 promotions at the product level, you must update the [promotion](https://support.bigcommerce.com/s/article/Store-Settings?language=en_US#promotion) settings in the control panel. */ readonly list_price?: number; /** @description Price of the item after all discounts are applied. (The final price before tax calculation.) */ readonly sale_price?: number; /** @description List price of the item multiplied by the quantity. */ readonly extended_list_price?: number; /** @description Sale price of the item multiplied by the quantity. */ readonly extended_sale_price?: number; /** * @description Whether or not a physical product requires shipping. * @example false */ readonly is_require_shipping?: boolean; /** * @description Whether or not you can change or remove the item from the cart. Items that are immutable include those added automatically by promotions. * @example true */ readonly is_mutable?: boolean; /** * @description Whether or not a promotion added an additional item. * @example false */ readonly added_by_promotion?: boolean; /** @description The gift wrapping details for this item. */ readonly gift_wrapping?: { /** @example Gift Wrap 1 */ readonly name?: string; /** @example Happy Birthday! */ readonly message?: string; /** * Format: float * @example 1.99 */ readonly amount?: number; }; } & unknown; /** * Not Found * @description Error payload for the BigCommerce API. */ readonly NotFound: { /** @description 404 HTTP status code. * */ readonly status?: number; /** @description The error title describing the particular error. */ readonly title?: string; readonly type?: string; readonly instance?: string; }; /** @description Response payload for the BigCommerce API. * */ readonly MetafieldResponse: { readonly data?: components["schemas"]["Metafield"]; }; /** @description Allows app partners to write custom data to various resources in the API. * */ readonly Metafield: components["schemas"]["MetafieldBase"] & { /** @description The unique identifier for the metafield. */ readonly id?: string; /** * Format: date-time * @description Date and time of the metafieldʼs creation. * @example 2022-06-16T18:39:00+00:00 */ readonly date_created?: string; /** * Format: date-time * @description Date and time when the metafield was last updated. * @example 2022-06-16T18:39:00+00:00 */ readonly date_modified?: string; /** * @description Client ID for the metafieldʼs creator. * @example asdfasdfasdfasdfasdfasdfasdf */ readonly owner_client_id?: string; }; /** @description Common Metafield properties. * */ readonly MetafieldBase: { /** * @description Determines the visibility and writeability of the field by other API consumers. * * | Value | Description | * | :--- | :--- | * | `app_only` | Private to the app that owns the field. | * | `read` | Visible to other API consumers. | * | `write` | Open for reading and writing by other API consumers. | * | `read_and_sf_access` | Visible to other API consumers, including on the storefront. | * | `write_and_sf_access` | Open for reading and writing by other API consumers, including on the storefront. | * * @enum {string} */ readonly permission_set?: "app_only" | "read" | "write" | "read_and_sf_access" | "write_and_sf_access"; /** * @description Namespace for the metafield, for organizational purposes. * * @example Sales Department */ readonly namespace?: string; /** * @description The name of the field, for example: `location_id`, `color`. * * @example Staff Name */ readonly key?: string; /** * @description The value of the field, for example: `1`, `blue`. * * @example Ronaldo */ readonly value?: string; /** * @description Description for the metafields. * * @example order */ readonly description?: string; /** * @description The type of resource with which the metafield is associated. * * @example cart * @enum {string} */ readonly resource_type?: "brand" | "product" | "variant" | "category" | "cart"; /** * @description The unique identifier for the resource with which the metafield is associated. * * @example 0 */ readonly resource_id?: string; }; /** @description Common Metafield properties. * */ readonly MetafieldBase_Post: { /** * @description Determines the visibility and writeability of the field by other API consumers. * * | Value | Description | * | :--- | :--- | * | `app_only` | Private to the app that owns the field. | * | `read` | Visible to other API consumers. | * | `write` | Open for reading and writing by other API consumers. | * | `read_and_sf_access` | Visible to other API consumers, including on the storefront. | * | `write_and_sf_access` | Open for reading and writing by other API consumers, including on the storefront. | * * @enum {string} */ readonly permission_set: "app_only" | "read" | "write" | "read_and_sf_access" | "write_and_sf_access"; /** * @description Namespace for the metafield, for organizational purposes. * * @example Sales Department */ readonly namespace: string; /** * @description The name of the field, for example: `location_id`, `color`. * * @example Staff Name */ readonly key: string; /** * @description The value of the field, for example: `1`, `blue`. * * @example Ronaldo */ readonly value: string; /** * @description Description for the metafields. * * @example Name of Staff Member */ readonly description?: string; }; /** @description Response payload for the BigCommerce API. * */ readonly MetaFieldCollectionResponse: { readonly data?: components["schemas"]["Metafield"]; readonly meta?: components["schemas"]["metaCollection_open"]; }; /** @description Response payload for the BigCommerce API. * */ readonly MetaFieldCollectionResponse_Batch: { readonly data?: readonly components["schemas"]["Metafield"][]; readonly meta?: components["schemas"]["CollectionMeta"]; }; /** @description Response payload for the BigCommerce API. * */ readonly MetaFieldCollectionResponse_Batch_POST_PUT: { readonly data?: readonly components["schemas"]["Metafield"][]; /** * @description Empty for 200 responses. * @example [] */ readonly errors?: readonly unknown[]; readonly meta?: components["schemas"]["WriteCollectionPartialSuccessMeta"]; }; /** @description Response payload for the BigCommerce API. * */ readonly MetaFieldCollectionDeleteResponseSuccess: { /** @example [ * 123, * 124, * 125 * ] */ readonly data?: readonly number[]; /** * @description Empty for 200 responses. * @example [] */ readonly errors?: readonly unknown[]; readonly meta?: components["schemas"]["WriteCollectionSuccessMeta"]; }; /** @description Response payload for the BigCommerce API. * */ readonly MetaFieldCollectionResponsePartialSuccess_POST_PUT: { readonly data?: readonly components["schemas"]["Metafield"][]; readonly errors?: readonly components["schemas"]["Error"][]; readonly meta?: components["schemas"]["WriteCollectionPartialSuccessMeta"]; }; /** @description Response payload for the BigCommerce API. * */ readonly MetaFieldCollectionResponsePartialSuccess_DELETE: { /** @example [ * 123 * ] */ readonly data?: readonly number[]; readonly errors?: readonly components["schemas"]["Error"][]; readonly meta?: components["schemas"]["WriteCollectionPartialSuccessMeta"]; }; /** @description Error response payload for the BigCommerce API. * */ readonly Error: { /** * @description The HTTP status code for the error. * * @example 422 */ readonly status?: number; /** * @description The error title. * * @example Bulk operation has failed */ readonly title?: string; /** * @description The error type. * * @example https://developer.bigcommerce.com/api-docs/getting-started/api-status-codes */ readonly type?: string; readonly errors?: components["schemas"]["ErrorDetail"]; }; /** * @description Error detail response payload for the BigCommerce API. * * @example { * "1": "Unauthorized to delete", * "2": "Metafield does not exist" * } */ readonly ErrorDetail: { readonly [key: string]: unknown; }; /** * Collection Meta * @description Additional data about the response. */ readonly WriteCollectionSuccessMeta: { /** * @description Total number of items in the result set. * * @example 3 */ readonly total?: number; /** * @description Total number of items that were successfully deleted. * * @example 3 */ readonly success?: number; /** * @description Total number of items that failed to be deleted. * * @example 0 */ readonly failed?: number; }; /** * Collection Meta * @description Additional data about the response. */ readonly WriteCollectionPartialSuccessMeta: { /** * @description Total number of items in the result set. * * @example 3 */ readonly total?: number; /** * @description Total number of items that were successfully deleted. * * @example 1 */ readonly success?: number; /** * @description Total number of items that failed to be deleted. * * @example 2 */ readonly failed?: number; }; /** * Collection Meta * @description Data about the response, including pagination and collection totals. */ readonly CollectionMeta: { /** * Pagination * @description Data about the response, including pagination and collection totals. */ readonly pagination?: { /** * @description Total number of items in the result set. * * @example 36 */ readonly total?: number; /** * @description Total number of items in the collection response. * * @example 36 */ readonly count?: number; /** * @description The amount of items returned in the collection per page, controlled by the limit parameter. * * @example 50 */ readonly per_page?: number; /** * @description The page you are currently on within the collection. * * @example 1 */ readonly current_page?: number; /** * @description The total number of pages in the collection. * * @example 1 */ readonly total_pages?: number; /** @description Pagination links for the previous and next parts of the whole collection. * */ readonly links?: { /** @description Link to the previous page returned in the response. * */ readonly previous?: string; /** * @description Link to the current page returned in the response. * * @example ?page=1&limit=50 */ readonly current?: string; /** @description Link to the next page returned in the response. * */ readonly next?: string; }; }; } & { readonly [key: string]: unknown; }; /** * Response meta * @description Response metadata. */ readonly metaCollection_open: Record; }; responses: { readonly CartResponse: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": { readonly data?: components["schemas"]["Cart_Full"]; readonly meta?: components["schemas"]["metaCollection_open"]; }; }; }; /** @description Cart conflict */ readonly CartConflictErrorResponse: { headers: { readonly [name: string]: unknown; }; content: { /** @example { * "status": 409, * "title": "The request cannot be processed due to a possible conflict. Please review the changes and try again.", * "type": "https://developer.bigcommerce.com/api-docs/getting-started/api-status-codes" * } */ readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; readonly CartRedirectResponse: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": { readonly data?: { /** * Format: url * @example https://store.mybigcommerce.com/cart.php?action=load&id=0aa00afa-a000-00a0-00aae-aa0000f000a0&token=00aaaaa0aa0000000000a000a000f0aa0000afa00aa00afa0a000000000aa0a0 */ readonly cart_url?: string; /** * Format: Url * @example https://store.mybigcommerce.com/cart.php?action=loadInCheckout&id=1ea11efe-b111-11d1-11ee-cd1110f111b1&token=00aaaaa0aa0000000000a000a000f0aa0000afa00aa00afa0a000000000aa0a0 */ readonly checkout_url?: string; /** * Format: url * @example https://store.mybigcommerce.com/cart.php?embedded=1&action=loadInCheckout&id=0aa00afa-a000-00a0-00aae-aa0000f000a0&token=00aaaaa0aa0000000000a000a000f0aa0000afa00aa00afa0a000000000aa0a0 */ readonly embedded_checkout_url?: string; }; readonly meta?: components["schemas"]["metaCollection_open"]; }; }; }; }; parameters: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept: string; readonly ContentType: string; /** @description The identifier of a specific cart. */ readonly cartId: string; /** @description The ID of the `Cart` to which the transactions belong. */ readonly cart_id: string; /** @description * `redirect_urls`: Create a direct link to a cart. This can be used for the /POST request for carts. * * `line_items.physical_items.options`: The cart returns an abbreviated result. Use this to return physical items product options. To return the extended cart object, use in a /POST request. * * `line_items.digital_items.options`: The cart returns an abbreviated result. Use this to return digital items product options. To return the extended cart object, use in a /POST request. * * `promotions.banners`: Returns a list of eligible banners. */ readonly line_items: readonly ("redirect_urls" | "line_items.physical_items.options" | "line_items.digital_items.options")[]; /** @description Specifies the page number in a limited (paginated) list of products. * */ readonly PageParam: number; /** @description The ID of the `Metafield`. * */ readonly MetafieldIdParam: number; /** @description Filter based on a metafieldʼs key. */ readonly MetafieldKeyParam: string; /** @description Filter based on comma-separated metafieldʼs keys. Could be used with vanilla `key` query parameter. */ readonly MetafieldKeyInParam: readonly string[]; /** @description Filter based on a metafieldʼs namespaces. */ readonly MetafieldNamespaceParam: string; /** @description Filter based on comma-separated metafieldʼs namespaces. Could be used with vanilla `namespace` query parameter */ readonly MetafieldNamespaceInParam: readonly string[]; /** @description Controls the number of items per page in a limited (paginated) list of products. * */ readonly LimitParam: number; /** @description 'Query parameter that lets you filter by the minimum date created, for example, `2024-05-14T09:34:00` or `2024-05-14`. Returns metafields created after this date.' * */ readonly date_created_min: string; /** @description 'Query parameter that lets you filter by the maximum date created, for example, `2024-05-14T09:34:00` or `2024-05-14`. Returns metafields created before this date.' * */ readonly date_created_max: string; /** @description 'Query parameter that lets you filter by the maximum date modified created, for example, `2024-05-14T09:34:00` or `2024-05-14`. Returns metafields modified before this date.' * */ readonly date_modified_max: string; /** @description 'Query parameter that lets you filter by the minimum date modified created, for example, `2024-05-14T09:34:00` or `2024-05-14`. Returns metafields modified after this date.' * */ readonly date_modified_min: string; /** @description Sort direction. Acceptable values are: `asc`, `desc`. * */ readonly DirectionParam: "asc" | "desc"; /** @description Fields to include, in a comma-separated list. The ID and the specified fields will be returned. */ readonly IncludeFieldsParamMetafields: readonly ("resource_id" | "key" | "value" | "namespace" | "permission_set" | "resource_type" | "description" | "owner_client_id" | "date_created" | "date_modified")[]; }; requestBodies: never; headers: never; pathItems: never; } export type $defs = Record; export interface operations { readonly createCart: { readonly parameters: { readonly query?: { /** @description * `redirect_urls`: Create a direct link to a cart. This can be used for the /POST request for carts. * * `line_items.physical_items.options`: The cart returns an abbreviated result. Use this to return physical items product options. To return the extended cart object, use in a /POST request. * * `line_items.digital_items.options`: The cart returns an abbreviated result. Use this to return digital items product options. To return the extended cart object, use in a /POST request. * * `promotions.banners`: Returns a list of eligible banners. */ readonly include?: readonly ("redirect_urls" | "line_items.physical_items.options" | "line_items.digital_items.options" | "promotions.banners")[]; }; readonly header?: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept?: components["parameters"]["Accept"]; readonly "Content-Type"?: components["parameters"]["ContentType"]; }; readonly path?: never; readonly cookie?: never; }; /** @description **Examples:** * * 1. Creating a cart by adding a simple product (a product without option selections). * 2. Creating a cart with a variant. This works when a product can be specified purely by a variant, without any other required options. * 3. Creating a cart using a date option. The API supports timestamps, “option_value”: 1743570000, and dates as an object literal, “option_value”: {“day”:”01”, “month”:”02”, “year”:”2020”}. * 4. Creating a cart with a variant, a checkbox, and a picklist modifier added. * 5. Creating a cart using a custom item. */ readonly requestBody: { readonly content: { readonly "application/json": components["schemas"]["CartCreatePostData"]; }; }; readonly responses: { readonly 201: components["responses"]["CartResponse"]; }; }; readonly addCartLineItems: { readonly parameters: { readonly query?: { /** @description * `redirect_urls`: Create a direct link to a cart. This can be used for the /POST request for carts. * * `line_items.physical_items.options`: The cart returns an abbreviated result. Use this to return physical items product options. To return the extended cart object, use in a /POST request. * * `line_items.digital_items.options`: The cart returns an abbreviated result. Use this to return digital items product options. To return the extended cart object, use in a /POST request. * * `promotions.banners`: Returns a list of eligible banners. */ readonly include?: readonly ("redirect_urls" | "line_items.physical_items.options" | "line_items.digital_items.options" | "promotions.banners")[]; }; readonly header?: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept?: components["parameters"]["Accept"]; readonly "Content-Type"?: components["parameters"]["ContentType"]; }; readonly path: { /** @description The identifier of a specific cart. */ readonly cartId: components["parameters"]["cartId"]; }; readonly cookie?: never; }; readonly requestBody: { readonly content: { readonly "application/json": components["schemas"]["Cart_Line_Item_Update_Post"]; }; }; readonly responses: { readonly 201: components["responses"]["CartResponse"]; }; }; readonly createCartRedirectURL: { readonly parameters: { readonly query?: never; readonly header?: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept?: components["parameters"]["Accept"]; readonly "Content-Type"?: components["parameters"]["ContentType"]; }; readonly path: { /** @description The identifier of a specific cart. */ readonly cartId: components["parameters"]["cartId"]; }; readonly cookie?: never; }; readonly requestBody?: { readonly content: { /** @example { * "query_params": { * "key_1": "value_1", * "key_2": "value_2" * } * } */ readonly "application/json": components["schemas"]["Redirect_urls_Post"]; }; }; readonly responses: { readonly 201: components["responses"]["CartRedirectResponse"]; }; }; readonly updateCartLineItem: { readonly parameters: { readonly query?: { /** @description * `redirect_urls`: Create a direct link to a cart. This can be used for the /POST request for carts. * * `line_items.physical_items.options`: The cart returns an abbreviated result. Use this to return physical items product options. To return the extended cart object, use in a /POST request. * * `line_items.digital_items.options`: The cart returns an abbreviated result. Use this to return digital items product options. To return the extended cart object, use in a /POST request. * * `promotions.banners`: Returns a list of eligible banners. */ readonly include?: readonly ("redirect_urls" | "line_items.physical_items.options" | "line_items.digital_items.options" | "promotions.banners")[]; }; readonly header?: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept?: components["parameters"]["Accept"]; readonly "Content-Type"?: components["parameters"]["ContentType"]; }; readonly path: { /** @description The identifier of a specific cart. */ readonly cartId: components["parameters"]["cartId"]; readonly itemId: string; }; readonly cookie?: never; }; readonly requestBody: { readonly content: { readonly "application/json": components["schemas"]["Cart_Line_Item_Update_Put"]; }; }; readonly responses: { readonly 200: components["responses"]["CartResponse"]; readonly 409: components["responses"]["CartConflictErrorResponse"]; }; }; readonly deleteCartLineItem: { readonly parameters: { readonly query?: { /** @description * `redirect_urls`: Create a direct link to a cart. This can be used for the /POST request for carts. * * `line_items.physical_items.options`: The cart returns an abbreviated result. Use this to return physical items product options. To return the extended cart object, use in a /POST request. * * `line_items.digital_items.options`: The cart returns an abbreviated result. Use this to return digital items product options. To return the extended cart object, use in a /POST request. * * `promotions.banners`: Returns a list of eligible banners. */ readonly include?: readonly ("redirect_urls" | "line_items.physical_items.options" | "line_items.digital_items.options" | "promotions.banners")[]; }; readonly header?: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept?: components["parameters"]["Accept"]; }; readonly path: { /** @description The identifier of a specific cart. */ readonly cartId: components["parameters"]["cartId"]; readonly itemId: string; }; readonly cookie?: never; }; readonly requestBody?: { readonly content: { readonly "application/json": components["schemas"]["CartLineItemDelete"]; }; }; readonly responses: { /** @description NOTE: Discounted line items are re-evaluated on cart actions and may be automatically added back to your cart with a new line item ID to satisfy promotional requirements. */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["Cart_Full"]; }; }; /** @description If the action’s result is an empty cart, the cart is automatically deleted. */ readonly 204: { headers: { readonly [name: string]: unknown; }; content?: never; }; readonly 409: components["responses"]["CartConflictErrorResponse"]; }; }; readonly getCart: { readonly parameters: { readonly query?: { /** @description * `redirect_urls`: Create a direct link to a cart. This can be used for the /POST request for carts. * * `line_items.physical_items.options`: The cart returns an abbreviated result. Use this to return physical items product options. To return the extended cart object, use in a /POST request. * * `line_items.digital_items.options`: The cart returns an abbreviated result. Use this to return digital items product options. To return the extended cart object, use in a /POST request. * * `promotions.banners`: Returns a list of eligible banners. */ readonly include?: readonly ("redirect_urls" | "line_items.physical_items.options" | "line_items.digital_items.options" | "promotions.banners")[]; }; readonly header?: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept?: components["parameters"]["Accept"]; }; readonly path: { /** @description The identifier of a specific cart. */ readonly cartId: components["parameters"]["cartId"]; }; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { readonly 200: components["responses"]["CartResponse"]; /** @description Cart not found. */ readonly 404: { headers: { readonly [name: string]: unknown; }; content?: never; }; }; }; readonly updateCart: { readonly parameters: { readonly query?: { /** @description * `redirect_urls`: Create a direct link to a cart. This can be used for the /POST request for carts. * * `line_items.physical_items.options`: The cart returns an abbreviated result. Use this to return physical items product options. To return the extended cart object, use in a /POST request. * * `line_items.digital_items.options`: The cart returns an abbreviated result. Use this to return digital items product options. To return the extended cart object, use in a /POST request. * * `promotions.banners`: Returns a list of eligible banners. */ readonly include?: readonly ("redirect_urls" | "line_items.physical_items.options" | "line_items.digital_items.options" | "promotions.banners")[]; }; readonly header?: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept?: components["parameters"]["Accept"]; readonly "Content-Type"?: components["parameters"]["ContentType"]; }; readonly path: { /** @description The identifier of a specific cart. */ readonly cartId: components["parameters"]["cartId"]; }; readonly cookie?: never; }; readonly requestBody: { readonly content: { /** @example { * "customer_id": 5, * "version": 1 * } */ readonly "application/json": components["schemas"]["CartUpdatePutRequestData"]; }; }; readonly responses: { readonly 201: components["responses"]["CartResponse"]; readonly 409: components["responses"]["CartConflictErrorResponse"]; }; }; readonly deleteCart: { readonly parameters: { readonly query?: never; readonly header?: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept?: components["parameters"]["Accept"]; }; readonly path: { /** @description The identifier of a specific cart. */ readonly cartId: components["parameters"]["cartId"]; }; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { readonly 204: { headers: { readonly [name: string]: unknown; }; content?: never; }; }; }; readonly getGlobalCartSettings: { readonly parameters: { readonly query?: never; readonly header?: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept?: components["parameters"]["Accept"]; }; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { /** @description OK */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["GlobalCartSettingsResponse"]; }; }; /** @description Unauthorized */ readonly 401: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; }; }; readonly updateGlobalCartSettings: { readonly parameters: { readonly query?: never; readonly header?: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept?: components["parameters"]["Accept"]; readonly "Content-Type"?: components["parameters"]["ContentType"]; }; readonly path?: never; readonly cookie?: never; }; readonly requestBody: { readonly content: { readonly "application/json": components["schemas"]["GlobalCartSettingsRequest"]; }; }; readonly responses: { /** @description OK */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["GlobalCartSettingsResponse"]; }; }; /** @description Bad Request. Input is invalid. */ readonly 400: { headers: { readonly [name: string]: unknown; }; content: { /** @example { * "status": 400, * "title": "Input is invalid", * "type": "https://developer.bigcommerce.com/api-docs/getting-started/api-status-codes", * "detail": "Syntax error" * } */ readonly "application/json": { readonly status?: number; readonly title?: string; readonly type?: string; readonly detail?: string; }; }; }; /** @description Unauthorized */ readonly 401: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; /** @description Unprocessable entity */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; }; }; readonly getChannelCartSettings: { readonly parameters: { readonly query?: never; readonly header?: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept?: components["parameters"]["Accept"]; }; readonly path: { /** @description The channel ID of the settings overrides. * * ### OAuth scopes * * | UI Name | Permission | Parameter | * |:--------|:-----------|:----------| * |Information & Settings | modify | `store_v2_information`| * |Information & Settings | read-only| `store_v2_information`| */ readonly channel_id: number; }; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { /** @description OK */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ChannelCartSettingsResponse"]; }; }; /** @description Unauthorized */ readonly 401: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; }; }; readonly updateChannelCartSettings: { readonly parameters: { readonly query?: never; readonly header?: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept?: components["parameters"]["Accept"]; readonly "Content-Type"?: components["parameters"]["ContentType"]; }; readonly path: { /** @description The channel ID of the settings overrides. * * ### OAuth scopes * * | UI Name | Permission | Parameter | * |:--------|:-----------|:----------| * |Information & Settings | modify | `store_v2_information`| * |Information & Settings | read-only| `store_v2_information`| */ readonly channel_id: number; }; readonly cookie?: never; }; readonly requestBody: { readonly content: { readonly "application/json": components["schemas"]["ChannelCartSettingsRequest"]; }; }; readonly responses: { /** @description OK */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ChannelCartSettingsResponse"]; }; }; /** @description Bad Request. Input is invalid. */ readonly 400: { headers: { readonly [name: string]: unknown; }; content: { /** @example { * "status": 400, * "title": "Input is invalid", * "type": "https://developer.bigcommerce.com/api-docs/getting-started/api-status-codes", * "detail": "Syntax error" * } */ readonly "application/json": { readonly status?: number; readonly title?: string; readonly type?: string; readonly detail?: string; }; }; }; /** @description Unauthorized */ readonly 401: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; /** @description Unprocessable entity */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; }; }; readonly getCartMetafields: { readonly parameters: { readonly query?: { /** @description Specifies the page number in a limited (paginated) list of products. * */ readonly page?: components["parameters"]["PageParam"]; /** @description Controls the number of items per page in a limited (paginated) list of products. * */ readonly limit?: components["parameters"]["LimitParam"]; /** @description Filter based on a metafieldʼs key. */ readonly key?: components["parameters"]["MetafieldKeyParam"]; /** @description Filter based on a metafieldʼs namespaces. */ readonly namespace?: components["parameters"]["MetafieldNamespaceParam"]; /** @description Sort direction. Acceptable values are: `asc`, `desc`. * */ readonly direction?: components["parameters"]["DirectionParam"]; }; readonly header?: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept?: components["parameters"]["Accept"]; }; readonly path: { /** @description The ID of the `Cart` to which the transactions belong. */ readonly cart_id: components["parameters"]["cart_id"]; }; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { /** @description An array of metafields and metadata. * */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetafieldResponse"]; }; }; }; }; readonly createCartMetafield: { readonly parameters: { readonly query?: never; readonly header?: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept?: components["parameters"]["Accept"]; readonly "Content-Type"?: components["parameters"]["ContentType"]; }; readonly path: { /** @description The ID of the `Cart` to which the transactions belong. */ readonly cart_id: components["parameters"]["cart_id"]; }; readonly cookie?: never; }; readonly requestBody: { readonly content: { /** @example { * "permission_set": "app_only", * "namespace": "Sales Department", * "key": "Staff Name", * "value": "Sam", * "description": "Name of staff member" * } */ readonly "application/json": components["schemas"]["MetafieldBase_Post"]; }; }; readonly responses: { /** @description A `Metafield` object. * */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { /** @example { * "data": { * "id": "24", * "key": "Staff Name", * "value": "Sam", * "namespace": "Sales Department", * "permission_set": "app_only", * "resource_type": "cart", * "resource_id": "b810114d-9926-45b7-bba5-7633b251154b", * "description": "Name of staff member", * "date_created": "2023-11-15T15:16:35+00:00", * "date_modified": "2023-11-15T15:16:35+00:00" * }, * "meta": {} * } */ readonly "application/json": components["schemas"]["MetaFieldCollectionResponse"]; }; }; /** @description Bad Request. Input is invalid. */ readonly 400: { headers: { readonly [name: string]: unknown; }; content: { /** @example { * "status": 400, * "title": "Input is invalid", * "type": "https://developer.bigcommerce.com/api-docs/getting-started/api-status-codes", * "detail": "Syntax error" * } */ readonly "application/json": { readonly status?: number; readonly title?: string; readonly type?: string; readonly detail?: string; }; }; }; /** @description The `Metafield` conflicts with another `Metafield`. This can result from duplicate unique key combinations of the appʼs client id, namespace, key, resource_type, and resource_id. * */ readonly 409: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; /** @description The `Metafield` was not valid. This is the result of missing required fields, or of invalid data. See the response for more details. */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; }; }; readonly getCartMetafield: { readonly parameters: { readonly query?: { /** @description Specifies the page number in a limited (paginated) list of products. * */ readonly page?: components["parameters"]["PageParam"]; /** @description Controls the number of items per page in a limited (paginated) list of products. * */ readonly limit?: components["parameters"]["LimitParam"]; /** @description Filter based on a metafieldʼs key. */ readonly key?: components["parameters"]["MetafieldKeyParam"]; /** @description Filter based on a metafieldʼs namespaces. */ readonly namespace?: components["parameters"]["MetafieldNamespaceParam"]; /** @description Sort direction. Acceptable values are: `asc`, `desc`. * */ readonly direction?: components["parameters"]["DirectionParam"]; }; readonly header?: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept?: components["parameters"]["Accept"]; }; readonly path: { /** @description The ID of the `Cart` to which the transactions belong. */ readonly cart_id: components["parameters"]["cart_id"]; /** @description The unique ID of the subject `Metafield`. */ readonly metafield_id: number; }; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { /** @description A `Metafield` object. * */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetafieldResponse"]; }; }; /** @description Not found (A metafield was not found with this query). * */ readonly 404: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["NotFound"]; }; }; }; }; readonly updateCartMetafield: { readonly parameters: { readonly query?: never; readonly header?: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept?: components["parameters"]["Accept"]; readonly "Content-Type"?: components["parameters"]["ContentType"]; }; readonly path: { /** @description The ID of the `Cart` to which the transactions belong. */ readonly cart_id: components["parameters"]["cart_id"]; /** @description The unique ID of the subject `Metafield`. */ readonly metafield_id: number; }; readonly cookie?: never; }; /** @description A `Metafield` object. * */ readonly requestBody: { readonly content: { readonly "application/json": components["schemas"]["MetafieldBase_Post"]; }; }; readonly responses: { /** @description A `Metafield` and metadata. * */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetaFieldCollectionResponse"]; }; }; /** @description Bad Request. Metafield is invalid. */ readonly 400: { headers: { readonly [name: string]: unknown; }; content: { /** @example { * "status": 400, * "title": "Input is invalid", * "type": "https://developer.bigcommerce.com/api-docs/getting-started/api-status-codes", * "detail": "Syntax error" * } */ readonly "application/json": { readonly status?: number; readonly title?: string; readonly type?: string; readonly detail?: string; }; }; }; /** @description Response object for metafields creation with partial success. * */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetaFieldCollectionResponsePartialSuccess_POST_PUT"]; }; }; }; }; readonly deleteCartMetafield: { readonly parameters: { readonly query?: never; readonly header?: { /** @description The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body. */ readonly Accept?: components["parameters"]["Accept"]; }; readonly path: { /** @description The ID of the `Cart` to which the transactions belong. */ readonly cart_id: components["parameters"]["cart_id"]; /** @description The unique ID of the subject `Metafield`. */ readonly metafield_id: number; }; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { /** @description An empty response. * */ readonly 204: { headers: { readonly [name: string]: unknown; }; content?: never; }; /** @description Not found (A metafield was not found with this query) * */ readonly 404: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["NotFound"]; }; }; }; }; readonly getCartsMetafields: { readonly parameters: { readonly query?: { /** @description Specifies the page number in a limited (paginated) list of products. * */ readonly page?: components["parameters"]["PageParam"]; /** @description Controls the number of items per page in a limited (paginated) list of products. * */ readonly limit?: components["parameters"]["LimitParam"]; /** @description Filter based on a metafieldʼs key. */ readonly key?: components["parameters"]["MetafieldKeyParam"]; /** @description Filter based on comma-separated metafieldʼs keys. Could be used with vanilla `key` query parameter. */ readonly "key:in"?: components["parameters"]["MetafieldKeyInParam"]; /** @description Filter based on a metafieldʼs namespaces. */ readonly namespace?: components["parameters"]["MetafieldNamespaceParam"]; /** @description Filter based on comma-separated metafieldʼs namespaces. Could be used with vanilla `namespace` query parameter */ readonly "namespace:in"?: components["parameters"]["MetafieldNamespaceInParam"]; /** @description Sort direction. Acceptable values are: `asc`, `desc`. * */ readonly direction?: components["parameters"]["DirectionParam"]; /** @description Fields to include, in a comma-separated list. The ID and the specified fields will be returned. */ readonly include_fields?: components["parameters"]["IncludeFieldsParamMetafields"]; /** @description 'Query parameter that lets you filter by the minimum date modified created, for example, `2024-05-14T09:34:00` or `2024-05-14`. Returns metafields modified after this date.' * */ readonly "date_modified:min"?: components["parameters"]["date_modified_min"]; /** @description 'Query parameter that lets you filter by the maximum date modified created, for example, `2024-05-14T09:34:00` or `2024-05-14`. Returns metafields modified before this date.' * */ readonly "date_modified:max"?: components["parameters"]["date_modified_max"]; /** @description 'Query parameter that lets you filter by the minimum date created, for example, `2024-05-14T09:34:00` or `2024-05-14`. Returns metafields created after this date.' * */ readonly "date_created:min"?: components["parameters"]["date_created_min"]; /** @description 'Query parameter that lets you filter by the maximum date created, for example, `2024-05-14T09:34:00` or `2024-05-14`. Returns metafields created before this date.' * */ readonly "date_created:max"?: components["parameters"]["date_created_max"]; }; readonly header?: never; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { /** @description List of `Metafield` objects. * */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetaFieldCollectionResponse_Batch"]; }; }; }; }; readonly updateCartsMetafields: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: { readonly content: { readonly "application/json": readonly (components["schemas"]["MetafieldBase_Post"] & { /** * @description The ID of metafield to update. * * @example 42 */ readonly id: string; })[]; }; }; readonly responses: { /** @description List of updated `Metafield` objects. * */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetaFieldCollectionResponse_Batch_POST_PUT"]; }; }; /** @description Bad Request. Input is invalid. */ readonly 400: { headers: { readonly [name: string]: unknown; }; content: { /** @example { * "status": 400, * "title": "Input is invalid", * "type": "https://developer.bigcommerce.com/api-docs/getting-started/api-status-codes", * "detail": "Syntax error" * } */ readonly "application/json": { readonly status?: number; readonly title?: string; readonly type?: string; readonly detail?: string; }; }; }; /** @description Response object for metafields creation with partial success. * */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetaFieldCollectionResponsePartialSuccess_POST_PUT"]; }; }; }; }; readonly createCartsMetafields: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: { readonly content: { readonly "application/json": readonly (components["schemas"]["MetafieldBase_Post"] & { /** * @description The ID for the cart with which the metafield is associated. * * @example 42 */ readonly resource_id: string; })[]; }; }; readonly responses: { /** @description List of created `Metafield` objects. * */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetaFieldCollectionResponse_Batch_POST_PUT"]; }; }; /** @description Bad Request. Input is invalid. */ readonly 400: { headers: { readonly [name: string]: unknown; }; content: { /** @example { * "status": 400, * "title": "Input is invalid", * "type": "https://developer.bigcommerce.com/api-docs/getting-started/api-status-codes", * "detail": "Syntax error" * } */ readonly "application/json": { readonly status?: number; readonly title?: string; readonly type?: string; readonly detail?: string; }; }; }; /** @description Response object for metafields creation with partial success. * */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetaFieldCollectionResponsePartialSuccess_POST_PUT"]; }; }; }; }; readonly deleteCartsMetafields: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path?: never; readonly cookie?: never; }; /** @description List of metafield `id`s. */ readonly requestBody?: { readonly content: { readonly "application/json": readonly number[]; }; }; readonly responses: { /** @description Response object for metafields deletion with success. * */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetaFieldCollectionDeleteResponseSuccess"]; }; }; /** @description Bad Request. Input is invalid. */ readonly 400: { headers: { readonly [name: string]: unknown; }; content: { /** @example { * "status": 400, * "title": "Input is invalid", * "type": "https://developer.bigcommerce.com/api-docs/getting-started/api-status-codes", * "detail": "Syntax error" * } */ readonly "application/json": { readonly status?: number; readonly title?: string; readonly type?: string; readonly detail?: string; }; }; }; /** @description Response object for metafields deletion with partial success. * */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetaFieldCollectionResponsePartialSuccess_DELETE"]; }; }; }; }; }