Swap Cart Item Product

You can use this API to change the matched products for cart items. It can be useful if the user wants to choose another item or item that was not matched.

Use this endpoint to get alternative product options for the current item. Or this endpoint to find an alternative by a string.

Swap Cart Item Product

POST https://graph.whisk.com/v1/:cart_id/items/:item_id/swap

Path Parameters

NameTypeDescription

cart_id

string

Unique cart identifier

item_id

string

Unique item identifier

Request Body

NameTypeDescription

newItem

object

The new product for the cart item - StoreItemValue object

{
  "id": "d57471c6de434340bd600d6b93f7b77c",
  "sourceList": [
    {
      "name": "eggs"
    }
  ],
  "product": {
    "sku": "278837857",
    "name": "Dr.Oetker Egg White Powder Multipack Sach4x5g",
    "quantity": {
      "count": 1
    },
    "price": {
      "list": 1.2
    },
    "images": [
      {
        "url": "https://img.tesco.com/Groceries/pi/303/5000254019303/IDShot_540x540.jpg"
      }
    ],
    "url": "https://www.tesco.com/groceries/en-GB/products/278837857"
  }
}

StoreItemValue

ATTRIBUTE

TYPE

DESCRIPTION

sku*

string

item identifier in Retailer

quantity

integer

number of items to checkout Default value: 1

source

CartItemSource

source for store product

CartItemResponse

ATTRIBUTE

TYPE

DESCRIPTION

id*

string

unique cart item identifier

sourceList*

array [CartItemSource]

list of original ingredients related to the current item

product

CartProductOption

store item

combined

array [CombinedProductsInfo]

information about combined items, if items were combined by a similar product

analysis

object

Analysis for cart item (category, product canonical name)

CartProductOption

ATTRIBUTE

TYPE

DESCRIPTION

sku*

string

store item identifier

name*

string

store item name

quantity*

CartProductQuantity

quantity of product items

price

CartItemPrice

price for the number of products

images*

array [ImageContainer]

url

string

link to product page in store

CartItemPrice

ATTRIBUTE

TYPE

DESCRIPTION

list*

double

list price

CartItemSource

ATTRIBUTE

TYPE

DESCRIPTION

name*

string

source item text

groupId

string

group identifier

CartProductQuantity

ATTRIBUTE

TYPE

DESCRIPTION

count*

integer

number of items

CombinedProductsInfo

ATTRIBUTE

TYPE

DESCRIPTION

name*

string

name of combined items

Sample Request

curl -X POST "https://graph.whisk.com/v1/:id/items" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "Authorization: Token Access-Token>" \
  -d '{
    "newItem": {
      "sku": "278837857",
      "quantity": 1
    }
  }'

Sample Response

{
  "id": "d57471c6de434340bd600d6b93f7b77c",
  "sourceList": [
    {
      "name": "eggs"
    }
  ],
  "product": {
    "sku": "278837857",
    "name": "Dr.Oetker Egg White Powder Multipack Sach4x5g",
    "quantity": {
      "count": 1
    },
    "price": {
      "list": 1.2
    },
    "images": [
      {
        "url": "https://img.tesco.com/Groceries/pi/303/5000254019303/IDShot_540x540.jpg"
      }
    ],
    "url": "https://www.tesco.com/groceries/en-GB/products/278837857"
  }
}

Last updated